public CloseableReference<Bitmap> createBitmap(
      Bitmap source,
      int x,
      int y,
      int width,
      int height,
      @Nullable Object callerContext) {
    return createBitmap(source, x, y, width, height, null, false, callerContext);
  }
public CloseableReference < Bitmap > createBitmap ( Bitmap source , int x , int y , int width , int height , @ Nullable Object callerContext ) { return createBitmap ( source , x , y , width , height , null , false , callerContext ) ; }
Creates a bitmap from the specified subset of the source
bitmap. It is initialized with the same density as the original bitmap.

@param source   The bitmap we are subsetting
@param x        The x coordinate of the first pixel in source
@param y        The y coordinate of the first pixel in source
@param width    The number of pixels in each row
@param height   The number of rows
@param callerContext the Tag to track who create the Bitmap
@return a reference to the bitmap
@throws IllegalArgumentException if the x, y, width, height values are
outside of the dimensions of the source bitmap, or width is <= 0,
or height is <= 0
@throws TooManyBitmapsException if the pool is full
@throws java.lang.OutOfMemoryError if the Bitmap cannot be allocated