SORU
13 AĞUSTOS 2012, PAZARTESİ


Android bitmap kırpma dairesel alan

Bir bitmap ve bitmap dairesel bir bölge kırpmak istiyorum. Çemberin dışında tüm pikselleri şeffaf olmalıdır. Bunu nasıl yapabilirim?

enter image description here

CEVAP
23 AĞUSTOS 2012, PERŞEMBE


Uzun beyin fırtınası sonra çözümü buldum

public Bitmap getCroppedBitmap(Bitmap bitmap) {
    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());

    paint.setAntiAlias(true);
    canvas.drawARGB(0, 0, 0, 0);
    paint.setColor(color);
    // canvas.drawRoundRect(rectF, roundPx, roundPx, paint);
    canvas.drawCircle(bitmap.getWidth() / 2, bitmap.getHeight() / 2,
            bitmap.getWidth() / 2, paint);
    paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
    canvas.drawBitmap(bitmap, rect, rect, paint);
    //Bitmap _bmp = Bitmap.createScaledBitmap(output, 60, 60, false);
    //return _bmp;
    return output;
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • DJAndrewRyan

    DJAndrewRyan

    22 Ocak 2007
  • How It Should Have Ended

    How It Shoul

    5 Mart 2007
  • JamesAtiPhone

    JamesAtiPhon

    16 EYLÜL 2010