把bitmap转为圆角的

来源:互联网 发布:js从入门到放弃 编辑:程序博客网 时间:2024/05/22 03:04
 

public static Bitmap toRoundCorner(Bitmap bitmap, int pixels) {

  Bitmap output = Bitmap.createBitmap(bitmap.getWidth(),
    bitmap.getHeight(), Config.ARGB_8888);
  Canvas canvas = new Canvas(output);

  final int color = 0xff424242;
  final Paint paint = new Paint();
  final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());

  final RectF rectF = new RectF(rect);
  final float roundPx = pixels;

  paint.setAntiAlias(true);
  canvas.drawARGB(0, 0, 0, 0);
  paint.setColor(color);
  canvas.drawRoundRect(rectF, roundPx, roundPx, paint);

  paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
  canvas.drawBitmap(bitmap, rect, rect, paint);

  return output;
 }

原创粉丝点击