Android Bitmap Load decodeSampledBitmapStreamForSize(InputStream is, int reqWidth, int reqHeight)

Here you can find the source of decodeSampledBitmapStreamForSize(InputStream is, int reqWidth, int reqHeight)

Description

decode Sampled Bitmap Stream For Size

Declaration

public static Bitmap decodeSampledBitmapStreamForSize(InputStream is,
            int reqWidth, int reqHeight) throws IOException 

Method Source Code

//package com.java2s;

import java.io.IOException;
import java.io.InputStream;

import android.graphics.Bitmap;

import android.graphics.BitmapFactory;

public class Main {
    public static Bitmap decodeSampledBitmapStreamForSize(InputStream is,
            int reqWidth, int reqHeight) throws IOException {
        is.mark(is.available());//from   w  w w .  ja v a2  s.  com

        final BitmapFactory.Options options = new BitmapFactory.Options();
        options.inJustDecodeBounds = true;
        BitmapFactory.decodeStream(is, null, options);

        options.inSampleSize = calculateInSampleSize(options, reqWidth,
                reqHeight);

        options.inJustDecodeBounds = false;

        is.reset();

        return BitmapFactory.decodeStream(is, null, options);
    }

    private static int calculateInSampleSize(BitmapFactory.Options options,
            int reqWidth, int reqHeight) {
        final int height = options.outHeight;
        final int width = options.outWidth;
        int inSampleSize = 1;

        if (height > reqHeight || width > reqWidth) {
            if (width > height)
                inSampleSize = Math.round((float) height
                        / (float) reqHeight);
            else
                inSampleSize = Math.round((float) width / (float) reqWidth);
        }

        return inSampleSize;
    }
}

Related

  1. decodeSampledBitmapFileForSize(File f, int reqWidth, int reqHeight)
  2. decodeSampledBitmapFromBytes(byte[] res, int reqWidth, int reqHeight)
  3. decodeSampledBitmapFromBytesForCurrentScreen( byte[] res, Context ctxt)
  4. decodeSampledBitmapFromResource(Resources res, int resId, int reqWidth, int reqHeight)
  5. decodeSampledBitmapFromUrl(URL url, int reqWidth, int reqHeight)
  6. download(String url, String fileName)
  7. fetchImage(final Context context, final String url, final BitmapFactory.Options decodeOptions, final Object cookie, final OnFetchCompleteListener callback)
  8. fetchImage(final Context context, final String url, final OnFetchCompleteListener callback)
  9. getBitmap(Resources resources, int resourceId)