本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《 阿里云开发者社区用户服务协议 》和 《 阿里云开发者社区知识产权保护指引 》。如果您发现本社区中有涉嫌抄袭的内容,填写 侵权投诉表单 进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。 public static Bitmap createCircleImage(Bitmap source, int min) { Paint paint = new Paint(); // paint.setStyle(Paint.Style.STROKE); // paint.setFlags(Paint.ANTI_ALIAS_FLAG); paint.setAntiAlias( true ); paint.setFilterBitmap( true ); Bitmap target = Bitmap.createBitmap(min, min, source.getConfig()); * 产生一个同样大小的画布 Canvas canvas = new Canvas(target); * 首先绘制圆形 canvas.drawCircle(min / 2, min / 2, min / 2 , paint); * 使用SRC_IN paint.setXfermode( new PorterDuffXfermode(PorterDuff.Mode.SRC_IN)); * 给Canvas加上抗锯齿标志 canvas.setDrawFilter( new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG | Paint.FILTER_BITMAP_FLAG)); * 绘制图片 canvas.drawBitmap(source, 0, 0 , paint); return target;