public abstract class Downsampler extends Object implements BitmapDecoder<InputStream>
Modifier and Type | Field and Description |
---|---|
static Downsampler |
AT_LEAST
Load and scale the image uniformly (maintaining the image's aspect ratio) so that the smallest edge of the
image will be between 1x and 2x the requested size.
|
static Downsampler |
AT_MOST
Load and scale the image uniformly (maintaining the image's aspect ratio) so that largest edge of the image
will be between 1/2x and 1x of the requested size.
|
static Downsampler |
NONE
Load the image at its original size.
|
Constructor and Description |
---|
Downsampler() |
Modifier and Type | Method and Description |
---|---|
Bitmap |
decode(InputStream is,
BitmapPool pool,
int outWidth,
int outHeight,
DecodeFormat decodeFormat)
Load the image for the given InputStream.
|
int[] |
getDimensions(MarkEnforcingInputStream is,
RecyclableBufferedInputStream bufferedStream,
BitmapFactory.Options options)
A method for getting the dimensions of an image from the given InputStream.
|
protected abstract int |
getSampleSize(int inWidth,
int inHeight,
int outWidth,
int outHeight)
Determine the amount of downsampling to use for a load given the dimensions of the image to be downsampled and
the dimensions of the view/target the image will be displayed in.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getId
public static final Downsampler AT_LEAST
public static final Downsampler AT_MOST
public static final Downsampler NONE
public Bitmap decode(InputStream is, BitmapPool pool, int outWidth, int outHeight, DecodeFormat decodeFormat)
Note - this method will throw an exception of a Bitmap with dimensions not matching those of the image for the given InputStream is provided.
decode
in interface BitmapDecoder<InputStream>
is
- An InputStream
to the data for the image.pool
- A pool of recycled bitmaps.outWidth
- The width the final image should be close to.outHeight
- The height the final image should be close to.decodeFormat
- The desired configuration for the returned bitmap.protected abstract int getSampleSize(int inWidth, int inHeight, int outWidth, int outHeight)
inWidth
- The width in pixels of the image to be downsampled.inHeight
- The height in piexels of the image to be downsampled.outWidth
- The width in pixels of the view/target the image will be displayed in.outHeight
- The height in pixels of the view/target the imag will be displayed in.BitmapFactory.decodeStream(java.io.InputStream, android.graphics.Rect,
android.graphics.BitmapFactory.Options)
.BitmapFactory.Options.inSampleSize
public int[] getDimensions(MarkEnforcingInputStream is, RecyclableBufferedInputStream bufferedStream, BitmapFactory.Options options)
is
- The InputStream representing the image.options
- The options to pass to
BitmapFactory.decodeStream(java.io.InputStream, android.graphics.Rect,
android.graphics.BitmapFactory.Options)
.