1. 程式人生 > >Android 將Bitmap轉換成圓形圖片的方法

Android 將Bitmap轉換成圓形圖片的方法


    public static Bitmap toRoundBitmap(Bitmap bitmap) {
    // 前面同上,繪製圖像分別需要bitmap,canvas,paint物件
        bitmap = Bitmap.createScaledBitmap(bitmap, 400, 400, true);
        Bitmap bm = Bitmap.createBitmap(400, 400, Bitmap.Config.ARGB_8888);
        Canvas canvas = new Canvas(bm);
        Paint paint = new Paint(Paint.ANTI_ALIAS_FLAG);
        // 這裡需要先畫出一個圓
        canvas.drawCircle(200, 200, 200, paint);
        // 圓畫好之後將畫筆重置一下
        paint.reset();
        // 設定影象合成模式,該模式為只在源影象和目標影象相交的地方繪製源影象
        paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
        canvas.drawBitmap(bitmap, 0, 0, paint);
        return bm;
    }