Rumah >php教程 >php手册 >java对PNG图片圆角处理 保持PNG透明背景

java对PNG图片圆角处理 保持PNG透明背景

WBOY
WBOYasal
2016-06-01 09:46:461703semak imbas
<code class="language-java">/*
* 圆角处理
* @param BufferedImage
* @param cornerRadius
* */
public static String makeRoundedCorner(String srcImageFile, String result, String type, int cornerRadius) {
    try {
        BufferedImage image = ImageIO.read(new File(srcImageFile));
        int w = image.getWidth();
        int h = image.getHeight();
        BufferedImage output = new BufferedImage(w, h, BufferedImage.TYPE_INT_ARGB);
        Graphics2D g2 = output.createGraphics();
        output = g2.getDeviceConfiguration().createCompatibleImage(w, h, Transparency.TRANSLUCENT);
        g2.dispose();
        g2 = output.createGraphics();
        g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
        g2.fillRoundRect(0, 0,w, h, cornerRadius, cornerRadius);
        g2.setComposite(AlphaComposite.SrcIn);
        g2.drawImage(image, 0, 0, w, h, null);
        g2.dispose();
        ImageIO.write(output, type, new File(result));
        return result;
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}</code>

 

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:记一次 Google 面试经历Artikel seterusnya:对优秀码农的思考