package and.awt;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import com.poi.poiandroid.Utils;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
public class ImageIO {
public static BufferedImage read(InputStream byteArrayInputStream) {
final BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeStream(byteArrayInputStream, null, options);
if (options.outWidth < 0 || options.outHeight < 0) {
return null;
}
// Calculate inSampleSize
options.inSampleSize = Utils.calculateInSampleSize(options, 480, 800);
// Decode bitmap with inSampleSize set
options.inJustDecodeBounds = false;
try {
byteArrayInputStream.reset();
} catch (IOException e) {
e.printStackTrace();
}
Bitmap bm = BitmapFactory.decodeStream(byteArrayInputStream, null, options);
return bm == null ? null : new BufferedImage(bm);
}
public static boolean canDecode(InputStream byteArrayInputStream) {
final BitmapFactory.Options options = new BitmapFactory.Options();
options.inJustDecodeBounds = true;
BitmapFactory.decodeStream(byteArrayInputStream, null, options);
if (options.outWidth < 0 || options.outHeight < 0) {
return false;
}
return true;
}
}