Search code examples
androidimagebitmapcrop

Android - How to crop a Bitmap image not using getResources


I know how to crop a bitmap image from resources, but i want to cache image from ImageView to Bitmap, and then i want to crop it.

So, here is my code:

 mImageViewArt.buildDrawingCache();
 Bitmap bmap = mImageViewArt.getDrawingCache(); // works good

 Bitmap bmp= BitmapFactory.decodeResource(getResources(),bmap);  // Doesn't work(Cannot be aplied Int to Bitmap)

 Bitmap resizedbitmap1 = Bitmap.createBitmap(bmp, 0, 0, 100, 100);

Solution

  • Why are you using the bmp intermediate variable?

    If you want to crop the image returned by getDrawingCache(), you should just pass it as the input to Bitmap.createBitmap(), i.e.

    mImageViewArt.buildDrawingCache();
    Bitmap bmap = mImageViewArt.getDrawingCache();
    
    Bitmap resizedbitmap1 = Bitmap.createBitmap(bmap, 0, 0, 100, 100);