android 通过bitmapfactory得到图片真实像素的方法,以及没有得到真实像素的原因
2024-08-24 05:35:26
原文来自:原文地址
由于这个错误导致浪费非常长时间找原因,所以要赶紧记录下来。
过程是这种,在使用android读取图片的时候,就是使用BitmapFactory.decodeResource(this.getResources(),R.drawable.base)的时候
返回的图片大小和真实图片大小不一样有木有,比方图片是700*450的, 但读出来是525*337的。假设有遇到过此类情况,请往下看
这个错误,仅仅能怪咱们学艺不精,原因就是你没在对应的资源目录里放图片就是 (drawable-ldpi mdpi ldpi),你肯定仅仅放了一个目录
举个实例,比方图片A 700*450仅仅放在mdpi里,这时候安卓会先推断屏幕的dpi 假设是120 它就去ldpi找 ,假设是160就去mdpi,假设是240就去hdpi
假设它去找了ldpi发现你没图片,它就去mdpi了, 但它会把图片缩放成525*337大概这个分辨率。 算法是 700*0.75 450*0.75 = 525 * 337
看到这里假设你不太明确这些数字杂回事,请去了解一下 dpi 密度, dpi和像素的关系等等.
说下解决的方法,眼下我是把图片拷贝到了全部的图片目录里.这样它就会找到对应的了。得到的图片的宽 高也就正常了
最新文章
- Nacl开发
- JMeter学习-040-JMeter图形化 HTML 报表概要说明
- linux下关于svn提交的时候强制写注释
- jquery插件-表单验证插件-demo
- js Array对象
- Mac OSX系统下SVN客户端SCPlugin问题
- TYVJ P1008 传球游戏
- easyui-tabs图标(获取焦点时显示图标,失去焦点时隐藏图标)
- linux下jdk安装 failed /usr/local/jdk1.6.0_10/jre/lib/i386/client/libjvm.so
- easyui源码翻译1.32--ComboBox(下拉列表框)
- 关于java中强制转换
- Java序列化框架性能比較
- nova创建虚拟机源码分析系列之一 restful api
- 再谈javascript面向对象编程
- Vulnerability Scanning
- 网易im即时通讯 移动端嵌入web
- Golang的select多路复用以及channel使用实践
- Zabbix监控服务器硬盘状态
- 【BZOJ4155】[Ipsc2015]Humble Captains
- Internet Download Manager IDM 破解器
热门文章
- NOIP2012提高组
- STM in Haskell
- 推荐几个好用的PHP集成开发环境
- grep and regular expression --- ^ . *
- 给notepad++加nppFtp插件连接ubuntu编写文本
- 解决:eclipse 断点调试进入到class文件,无法查看变量值问题
- org.hibernate.HibernateException: Unable to get the default Bean Validation factor
- 如何在 GitHub 建立个人主页和项目演示页面
- Codeforces Round #428 A. Arya and Bran【模拟】
- bmi健康指数