gpt4 book ai didi

android - 从资源加载后位图宽度/高度不同

转载 作者:IT老高 更新时间:2023-10-28 23:28:37 28 4
gpt4 key购买 nike

第一。我是 Android 编码的新手 :)

我所做的是从我的 res/drawable-mdpi 加载位图

BitmapFactory.decodeResource(getResources(), R.drawable.cat_ground_01);

在我注销位图的宽度/高度后,它会告诉我另一个值,然后位图实际上是。

这有点难以放置像素完美的位图,例如将面部位图与嘴部位图重叠。

也许我只是缺少有关此主题的一些知识:9我希望你能帮忙。

最佳答案

当您执行 Bitmapfactory.decodeResource() 时,Android 默认会选择“匹配”的 dpi 版本进行解码,您提到的代码中发生的情况将产生:

  1. 你不能指定它是mdpi、hdpi还是其他,它会选择与你运行的系统相匹配的版本。即,如果您在 mdpi 设备上运行,它将解码 mdpi 版本;在 ldpi 中,然后是 ldpi 版本。

  2. 假设您使用的是 hdpi 设备,但没有定义 mdpi 资源,它会获取您的 mdpi 资源,并在解码期间将其转换为 hdpi(即,它将您的 mdpi 位图放大到大约 1.5 倍大);同样,如果您的设备分辨率较低,那么它会缩小图像

我想这就是发生在你身上的事情。对于 BitmapFactory,它实际上可以选择不缩放图像:

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

将 inScaled 设置为 false 即可。

关于android - 从资源加载后位图宽度/高度不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5128185/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com