`

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

    博客分类:
  • Java
 
阅读更多
http://my.oschina.net/u/2358721/blog/634042
/*
* 圆角处理
* @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;
}
分享到:
评论

相关推荐

    java对图片改变大小,png防止变黑,加圆角 圆角外透明

    总的来说,Java提供了丰富的图像处理功能,通过合理的组合和运用,我们可以实现各种复杂的图像处理任务,包括改变图片大小、保持PNG透明度以及添加圆角等效果。在实际开发中,还需要注意性能优化,特别是在处理大量...

    安卓头像制作图片圆角剪裁相关-Android创建抗锯齿透明背景圆角图像.zip

    本压缩包文件“安卓头像制作图片圆角剪裁相关-Android创建抗锯齿透明背景圆角图像.zip”包含了一些资源和源码,可以帮助开发者实现这一功能。下面我们将详细探讨如何在Android中创建这样的图像。 首先,我们可以从...

    Android创建抗锯齿透明背景圆角图像

    在Android开发中,创建具有抗锯齿效果的透明背景圆角图像是一项常见的需求,这通常涉及到自定义View或者使用特定的图像处理库。本篇将深入探讨如何实现这一功能。 首先,我们需要理解抗锯齿(Anti-Aliasing)技术。...

    Android创建抗锯齿透明背景圆角图像.zip

    总之,Android创建抗锯齿透明背景圆角图像涉及到图像处理、图形绘制和UI设计等多个方面。通过研究提供的源码,开发者不仅可以学习到如何创建圆角图像,还可以了解到如何优化视觉效果,提高应用的用户体验。对于希望...

    PngButton-在BUTTON上使用PNG图片

    PNG是一种无损压缩的位图格式,常用于需要透明背景的图像,因此在UI设计中非常受欢迎。 首先,我们要理解如何在Android Studio中创建一个自定义的`PngButton`。这通常涉及到创建一个新的XML布局文件,在这个文件中...

    安卓Andriod源码——创建抗锯齿透明背景圆角图像.zip

    RoundedImageView类会读取图片,并根据指定的圆角半径对四个角落进行裁剪,同时保持图像的其他部分不变。关键代码可能包括以下部分: ```java public class RoundedImageView extends ImageView { private float ...

    simplepicture_图片处理_

    在Java编程语言中,图片处理是一项常见的任务,尤其在开发应用程序时,可能需要对图片进行各种操作,如裁剪、缩放、旋转、添加边框或制作圆角等。"simplepicture_"项目就是一个专注于图片处理的工具包,它提供了一...

    安卓Android源码——常用图片特效处理源码.zip

    4. 裁剪圆角:可以利用PorterDuffXfermode和Paint对象,通过画布(Canvas)的drawARGB()方法将背景填充为透明,再绘制带有圆角矩形Path的Bitmap,实现图片圆角效果。 5. 图片滤镜:Android的ColorFilter可以实现...

    android开发设置圆形、圆角图片(全网最简单,不会你打我)

     xml 的方式是不可以的, xml 只能改变背景为圆角的,没法改图片本身。 只能通过java代码改,但是java图像处理不太会用啊,网上的教程一看一大堆代码,感觉太难了,不适合本人。  用 Glide 4.x 框架可以做,但是不...

    android .9图图片使用帮助文档

    .9.png图片的使用能够确保图片在横向和纵向拉伸时保持原始图像的细节,如渐变和圆角的清晰度。 点九图的核心原理是将图片分为9个区域:四个角落、四条边和一个中心区域。角落区域不进行拉伸,保持原样;边界的四个...

    pngButton的实现

    确保初始化时加载PNG图片作为背景。 - **加载PNG图像**:使用平台相关的API读取PNG文件,将其设置为按钮的背景。在Android中,可以使用`BitmapFactory.decodeResource()`;在iOS中,使用`UIImage(named:)`。 - **...

    基于DialogFragment封装,实现圆角对话框、进度条、列表框、输入框的Android UI设计源码

    包含128个HTML文件、98个Java源文件、58个PNG图片文件、29个XML布局文件、5个Gradle配置文件,总计336个文件,适用于需要自定义边框圆角、背景透明度、字体大小与色值等个性化UI设计的Android项目开发。

    RoundCorner:如何绘制RoundCorner图片的示例

    这个示例将创建一个500x500像素的透明背景图片,其中包含一个480x480像素的圆角矩形,圆角半径为30像素,并将其保存为PNG图像。 在"RoundCorner-master"这个压缩包中,很可能包含了类似这样的示例代码,通过不同的...

    应用源码之TextViewBackground.zip

    通过以上对TextViewBackground的源码解析,我们可以看到Android UI开发中的背景处理涉及到多个层次和细节。理解并熟练运用这些知识点,将有助于我们编写出更加高效、美观且符合用户需求的Android应用。

    APP开发教程 Java Android移动端开发 4、Android UI进阶编程 (1) 共34页.pptx

    例如,BitmapDrawable处理位图资源,.9.png用于创建可拉伸不失真的图像,而Shape XML则用于定义形状,如矩形、圆角矩形等。 Shape XML允许开发者在代码中创建和定义自定义图形,通过设置不同的属性,如颜色、渐变、...

    Android 设置安卓圆形头像.rar

    对于头像来说,通常使用PNG格式,因为它支持透明度,可以方便地创建带有背景透明的头像图片。 要将方形头像转换为圆形,我们可以利用Android的图形库。一种常见方法是使用`BitmapShader`类,它允许我们为位图创建...

    Android阴影布局

    而`Nine-Patch`图片是一种特殊的PNG格式,可以指定可拉伸区域和内容区域,常用于按钮、背景等,也可以用来制作阴影效果。 在压缩包中的"shadowlayout"可能包含示例代码、自定义阴影布局类或其他相关资源。你可以...

    安卓Android源码——按钮点击WIN8磁贴效果.zip

    1. **自定义按钮样式**:在res目录下的values文件夹里,创建一个新的XML文件,例如`button_style.xml`,定义独特的背景颜色、边框宽度、圆角半径等属性。可以使用selector资源(`<selector>`标签)来定义不同状态下...

    Jfreechart中文API

    它支持PNG、JPEG格式图片输出,同时兼容PDF和Excel导出。通过JFreeChart,开发者可以轻松地将图表集成到自己的应用程序中,实现数据可视化。 #### 二、核心组件与功能 **1. 图表设置** - `setAntiAlias(boolean ...

    Android实现可使用自定义透明Dialog样式的Activity完整实例

    这将使你的Activity看起来像一个标准的Dialog,但如果你想要更多的定制,如半透明背景和圆角,你需要自定义一个style。 在项目的values文件夹下,创建或打开styles.xml文件,然后定义一个新的style,名为...

Global site tag (gtag.js) - Google Analytics