Android/Android Java

[Android Java] Bitmap 이미지 원형으로 자르기

Bell91 2023. 11. 2. 17:51
반응형

Code

 public static Bitmap getBitmapCircleCrop(Bitmap bitmap, int Width, int Height) {
     
        Bitmap output = Bitmap.createBitmap(bitmap.getWidth(),
                bitmap.getHeight(), Bitmap.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());

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

        canvas.drawCircle(bitmap.getWidth()/2, bitmap.getHeight()/2,
                bitmap.getWidth()/2, paint);
        paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
        canvas.drawBitmap(bitmap, rect, rect, paint);
        
        Bitmap CroppedBitmap = output;
        if(Width!=0 && Height!=0)  CroppedBitmap = Bitmap.createScaledBitmap(output, Width, Height, false);
        return CroppedBitmap;
    }
  • Bitmap 이미지를 원형으로 만들어 출력해준다
  • 원형 Bitmap 이미지를 파일로 저장하거나, 아이콘으로 사용
  • 이미지 모양이 아이콘에 맞지 않거나 원형아이콘을 사용하고 있다면 사용
  • Ex)Notification, Shortcuts, 혹은 원형이미지에 많이 사용

 


Reference

https://featherwing.tistory.com/47

반응형