Java tutorial
//package com.java2s; //License from project: Apache License import java.io.File; import android.graphics.Bitmap; import android.graphics.BitmapFactory; public class Main { public static Bitmap decodeFile(File f, int maxSize) { // decode image size BitmapFactory.Options o = new BitmapFactory.Options(); o.inJustDecodeBounds = true; BitmapFactory.decodeFile(f.getAbsolutePath(), o); int width_tmp = o.outWidth, height_tmp = o.outHeight; int scale = 1; while (true) { if (width_tmp / 2 < maxSize || height_tmp / 2 < maxSize) break; width_tmp /= 2; height_tmp /= 2; scale++; } // decode with inSampleSize BitmapFactory.Options o2 = new BitmapFactory.Options(); o2.inSampleSize = scale; return BitmapFactory.decodeFile(f.getAbsolutePath(), o2); } }