android通过Canvas和Paint截取无锯齿圆形图片
2016-07-22 11:14
441 查看
一个通过Canvas和Paint截取无锯齿圆形图片。
/** * 根据原图和变长绘制圆形图片 * * @param source * @param min * @return */ 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; }
相关文章推荐
- Android富文本编辑器RichEditor的使用
- android studio无法预览
- android--startactivityforresult按back键重写onBackPressed()
- AndroidStudio 断点调试
- 关于调用Android系统分享
- Android动画--属性动画--基础
- Android内存泄漏的八种可能
- Android studio远程主机强迫关闭了一个现有的连接(夜神模拟器)
- Caused by: java.lang.ClassNotFoundException[android的终极解决错误]
- Android-transulcent-status-bar总结
- Android-ION
- Android LayoutInflater 详解
- Android复习之四大组件
- Android 画布学习Canvas (1)坐标
- 一张图将Activity与Fragment生命周期展现的淋漓尽致
- 使用Android Studio分析内存问题
- android developer tiny share-20160721
- android developer tiny share-20160721
- ANDROID开机动画bootanimation.zip的详细制作方法
- Activity的四种启动模式