六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 35|回复: 0

Android中如何生成带圆角的Bitmap图片

[复制链接]

升级  14.67%

16

主题

16

主题

16

主题

秀才

Rank: 2

积分
72
 楼主| 发表于 2013-2-3 13:24:20 | 显示全部楼层 |阅读模式
有时候我们在开发Android应用时,会遇到圆角图片的问题,那么,我们如何在Android中用代码来生成圆角Bitmap图片呢?下面这段代码也许能够帮到你。
该方法主要用到了drawRoundRect来画圆角矩形,然后通过drawBitmap来画图片。

//生成圆角图片public static Bitmap GetRoundedCornerBitmap(Bitmap bitmap) {    try {        Bitmap output = Bitmap.createBitmap(bitmap.getWidth(),                bitmap.getHeight(), Config.ARGB_8888);        Canvas canvas = new Canvas(output);                        final Paint paint = new Paint();        final Rect rect = new Rect(0, 0, bitmap.getWidth(),                bitmap.getHeight());               final RectF rectF = new RectF(new Rect(0, 0, bitmap.getWidth(),                bitmap.getHeight()));        final float roundPx = 14;        paint.setAntiAlias(true);        canvas.drawARGB(0, 0, 0, 0);        paint.setColor(Color.BLACK);               canvas.drawRoundRect(rectF, roundPx, roundPx, paint);        paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));                     final Rect src = new Rect(0, 0, bitmap.getWidth(),                bitmap.getHeight());                 canvas.drawBitmap(bitmap, src, rect, paint);           return output;    } catch (Exception e) {                return bitmap;    }}
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表