public static Bitmap toRoundBitmap(Context context, String filename) { Bitmap bitmap = getBitmap(context, filename); int width = bitmap.getWidth(); int height = bitmap.getHeight(); float roundPx; float left, top, right, bottom, dst_left, dst_top, dst_right, dst_bottom; if (width <= height) { roundPx = width / 2; top = 0; left = 0; bottom = width; right = width; height = width; dst_left = 0; dst_top = 0; dst_right = width; dst_bottom = width; } else { roundPx = height / 2; float clip = (width - height) / 2; left = clip; right = width - clip; top = 0; bottom = height; width = height; dst_left = 0; dst_top = 0; dst_right = height; dst_bottom = height; } Bitmap output = Bitmap.createBitmap(width, height, Config.ARGB_8888); Canvas canvas = new Canvas(output); final int color = 0xff424242; final Paint paint = new Paint(); final Rect src = new Rect((int) left, (int) top, (int) right, (int) bottom); final Rect dst = new Rect((int) dst_left, (int) dst_top, (int) dst_right, (int) dst_bottom); final RectF rectF = new RectF(dst); paint.setAntiAlias(true); canvas.drawARGB(0, 0, 0, 0); paint.setColor(Color.WHITE); paint.setStrokeWidth(4); canvas.drawRoundRect(rectF, roundPx, roundPx, paint); paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); canvas.drawBitmap(bitmap, src, dst, paint); //画白色圆圈 paint.reset(); paint.setColor(Color.WHITE); paint.setStyle(Paint.Style.STROKE); paint.setStrokeWidth(STROKE_WIDTH); paint.setAntiAlias(true); canvas.drawCircle(width / 2, width / 2, width / 2 - STROKE_WIDTH / 2, paint); return output; }
//从assets资源中获取图片 public static Bitmap getBitmap(Context context, String filename) { Bitmap image = null; AssetManager am = context.getResources().getAssets(); try { InputStream is = am.open(filename); image = BitmapFactory.decodeStream(is); is.close(); } catch (IOException e) { e.printStackTrace(); } return image; }
// Audience audience1 = new Audience();
// audience1.setLevels(27);
// audience1.setName("依然&代理");
// audience1.setColor("#B84C65");
// audience1.setBackgroudcolor("#E1B6E1");
// audience1.setXiaofei(new BigDecimal(10000));
// list1.add(audience1);
//
// Audience audience2 = new Audience();
// audience2.setLevels(26);
// audience2.setName("梦回千古等待");
// audience2.setColor("#BA5AC0");
// audience2.setBackgroudcolor("#E1B6E1");
// audience2.setXiaofei(new BigDecimal(95000));
// list1.add(audience2);
//
// Audience audience3 = new Audience();
// audience3.setLevels(21);
// audience3.setName("晶晶的小房间");
// audience3.setColor("#3F3236");
// audience3.setBackgroudcolor("#B79DAA");
// audience3.setXiaofei(new BigDecimal(5000));
// list1.add(audience3);
//
// Audience audience4 = new Audience();
// audience4.setLevels(16);
// audience4.setName("红日牵心姑");
// audience4.setColor("#3F3236");
// audience4.setBackgroudcolor("#B79DAA");
// audience4.setXiaofei(new BigDecimal(2500));
// list1.add(audience4);
//
// Audience audience5 = new Audience();
// audience5.setLevels(11);
// audience5.setName("和风天下");
// audience5.setColor("#3F3236");
// audience5.setBackgroudcolor("#B79DAA");
// audience5.setXiaofei(new BigDecimal(1000));
// list1.add(audience5);
//
// Audience audience6 = new Audience();
// audience6.setLevels(6);
// audience6.setName("嘚瑟的千年虫");
// audience6.setColor("#3F3236");
// audience6.setBackgroudcolor("#B79DAA");
// audience6.setXiaofei(new BigDecimal(923));
// list1.add(audience6);
//
// return list1;
// }