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

  • Ampisound

    Ampisound

    12 Kasım 2006
  • Android Developers

    Android Deve

    9 Kasım 2007
  • Jejoab

    Jejoab

    4 NİSAN 2008