1、前言
现在很多的App的头像显示都改成的圆形的了,这样让人不会感觉生硬,像微信的公众号列表,易信的头像,来往的头像等等。
做为程序猿肯定要跟上这个技术,所以找到了这个工具函数
/**
* Crops a circle out of the thumbnail photo.
*/
public Bitmap getCroppedBitmap(Bitmap bitmap) {
Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(),
Config.ARGB_8888);
//设置一个图片大小的矩形
final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
//bm是一个刚好canvas大小的空Bitmap ,画完后应该会自动保存到bm
Canvas canvas = new Canvas(output);
final Paint paint = new Paint();
paint.setAntiAlias(true);
int halfWidth = bitmap.getWidth()/2;
int halfHeight = bitmap.getHeight()/2;
//画圆
canvas.drawCircle(halfWidth, halfHeight, Math.max(halfWidth, halfHeight), paint);
//设置为取两层图像交集部门,只显示上层图像
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
//画图像
canvas.drawBitmap(bitmap, rect, rect, paint);
return output;
}
效果图:
5、广告
最近搞了个微信公众号,为各种程序员枯燥的写码生活添加一些生活调料,
在等待编译的过程看一篇美丽的图文放松放松肌肉。希望各位看官赏脸关注一下
公众号:马桶上的哲学
读哲名理,提升逼格