获取位图宽度和高度而不加载到内存

时间:2012-07-27 04:02:24

标签: android bitmap

我是android的新手,所以我想知道有没有办法获得Bitmap的尺寸而不将位图加载到内存中。??

1 个答案:

答案 0 :(得分:30)

您可以使用inJustDecodeBounds设置BitmapFactory.Options以获取图像宽度和高度,而无需在内存中加载位图像素

BitmapFactory.Options bitmapOptions = new BitmapFactory.Options();
bitmapOptions.inJustDecodeBounds = true;
BitmapFactory.decodeStream(inputStream, null, bitmapOptions);
int imageWidth = bitmapOptions.outWidth;
int imageHeight = bitmapOptions.outHeight;
inputStream.close();

更多详情:

  

public boolean inJustDecodeBounds

     

自:API Level 1如果设置为true,   解码器将返回null(无位图),但out ...字段将返回   仍然被设置,允许调用者在没有的情况下查询位图   为其像素分配内存。

http://developer.android.com/reference/android/graphics/BitmapFactory.Options.html#inJustDecodeBounds