Android中获取图片尺寸大小两种方法
16lz
2021-01-26
两种方法 建议用第二种
private void getPictureSize(String path) { /*第一种直接把bitmap加载到内存中,通过对bitmap的测量, 得出宽高,由于这个方法直接把图片引入内存, 如果图片过大,将会引发OOM;*/ //方法一:通过uri把图片转化为bitmap的方法 Bitmap bitmap = BitmapFactory.decodeFile(path); int height = bitmap.getHeight(); int width = bitmap.getWidth(); Log.i("xg", "通过bitmap获取到的图片大小" + "width: " + width + " height: " + height); /*bitmap.options类为bitmap的裁剪类,通过他可以实现bitmap的裁剪; 如果不设置裁剪后的宽高和裁剪比例,返回的bitmap对象将为空, 但是这个对象存储了原bitmap的宽高信息。*/ //方法二:使用Options类来获取 //inJustDecodeBounds If set to true, the decoder will return null (no bitmap) //如果设置为空,则获取的bitmap为空, BitmapFactory.Options options = new BitmapFactory.Options(); options.inJustDecodeBounds = true;//这个参数设置为true才有效, Bitmap bmp = BitmapFactory.decodeFile(path, options);//这里的bitmap是个空 if (bmp == null) { Log.e("xg", "通过options获取到的bitmap为空 ==="); } int outHeight = options.outHeight; int outWidth = options.outWidth; Log.i("xg", "通过Options获取到的图片大小" + "width:" + outWidth + " height: " + outHeight); }
更多相关文章
- 解决-Android: ListView.setSelection无效
- 异步访问----Android(安卓)AsyncTask 源码解析
- android 中的 window,view,activity具体关系
- javac错误:javac不是内部或外部命令 也不是可运行的程序 解决方法
- Android(安卓)Handler的基本使用
- Android常用的组件间通信方式
- (新手)Android(安卓)studio 安装:错误和解决方法(updated on 200406)
- AsyncTask的简单使用
- Android(安卓)TV热键(快捷键、组合键)实现