美文网首页
android 资源图片转bitmap会压缩bug

android 资源图片转bitmap会压缩bug

作者: 墨白1629 | 来源:发表于2020-10-20 18:54 被阅读0次

    将资源图片转bitmap,原代码:

    Bitmap bm1=BitmapFactory.decodeResource(getResources(), R.drawable.img);

    上述代码会导致图片在不同资源文件下面会压缩

    放到res/drawable-mdpi下放大了1.5倍 

    放到res/drawable-xhdpi下缩小了1.3倍 

    放到res/drawable-xxdpi下缩小了2倍 

    原因:

    电脑上图片尺寸,单位是像素。Android手机的屏幕分ldpi、mdpi、hdpi,甚至还有xhdpi,对于mdpi(density=160)设备,1dp=1px,对于hdpi(density=240)的设备,1dp=1.5px。所以,把图片放在了res/drawable-mdpi目录下,而运行的Android设备屏幕属于hdpi,导致图片尺寸会扩大1.5倍。

    解决办法:

    修改上述代码,设置缩放为false:

    BitmapFactory.Options bfoOptions =newBitmapFactory.Options();

    bfoOptions.inScaled =false;

    Bitmap img1 = BitmapFactory.decodeResource(getResources(), R.drawable.img, bfoOptions);

    相关文章

      网友评论

          本文标题:android 资源图片转bitmap会压缩bug

          本文链接:https://www.haomeiwen.com/subject/ctzdmktx.html