saa*_*az1 18 android decode bitmap decoding bitmapfactory
我想用BitmapFactory.decodeFile(路径,选项)解码SD卡中的图像.
我还希望将大于2048x2048像素的图像缩小到最多2048x2048(保持比例).
我可以在获取位图后手动执行此操作,但除了已分配的字节之外,还需要分配大量字节.
我应该如何设置我的BitmapFactory.Options对象以获得该效果?
谢谢
jbo*_*wes 10
首次加载图像时,请使用BitmapFactory.Options.inSampleSize,使其大小尽可能接近目标大小,然后使用Bitmap.createScaledBitmap
缩放到所需的确切大小.
在这个答案中有一些代码.
通过设置开始inJustDecodeBounds
到true
你的Options
,这会给你的图像的大小,而无需加载任何图像数据.
如果图像尺寸小于最大尺寸,则只需像往常一样装入.
另一方面,如果它太大,请使用inSampleSize
读取较小的位图.
注意:我不认为解码在使用inSampleSize时会进行任何过滤,因此您可能会丢失一些细节,但由于图像大小太大(2048像素),我认为这不会导致任何问题.
归档时间: |
|
查看次数: |
38244 次 |
最近记录: |