Skip to content

Instantly share code, notes, and snippets.

@warriorg
Created August 31, 2015 03:37
Show Gist options
  • Save warriorg/92efac421a150212cc6c to your computer and use it in GitHub Desktop.
Save warriorg/92efac421a150212cc6c to your computer and use it in GitHub Desktop.
Android 图片压缩
private Bitmap decodeFile(File f) {
try {
// Decode image size
BitmapFactory.Options o = new BitmapFactory.Options();
o.inJustDecodeBounds = true;
BitmapFactory.decodeStream(new FileInputStream(f), null, o);
// The new size we want to scale to
final int REQUIRED_SIZE=70;
// Find the correct scale value. It should be the power of 2.
int scale = 1;
while(o.outWidth / scale / 2 >= REQUIRED_SIZE &&
o.outHeight / scale / 2 >= REQUIRED_SIZE) {
scale *= 2;
}
// Decode with inSampleSize
BitmapFactory.Options o2 = new BitmapFactory.Options();
o2.inSampleSize = scale;
return BitmapFactory.decodeStream(new FileInputStream(f), null, o2);
} catch (FileNotFoundException e) {}
return null;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment