Java tutorial
//package com.java2s; //License from project: Apache License import android.graphics.Bitmap; import android.graphics.BitmapFactory; import java.io.ByteArrayOutputStream; public class Main { public static Bitmap compressByLimit(Bitmap bitmap, int limitSize) { if (bitmap == null) { return null; } ByteArrayOutputStream baos = new ByteArrayOutputStream(); int options = 100; bitmap.compress(Bitmap.CompressFormat.JPEG, options, baos); while (baos.size() > limitSize && options > 0) { options--; baos.reset(); bitmap.compress(Bitmap.CompressFormat.JPEG, options, baos); } byte[] compressedData = baos.toByteArray(); return BitmapFactory.decodeByteArray(compressedData, 0, compressedData.length); } }