这个方法很坑爹的。
动不动就内存溢出。。
建议使用
Bitmap dragimg=Bitmap.createScaledBitmap(bmp, lockWidth, lockWidth, true);
方法
输入值分别是
被转换的图片对象
宽和高
最后一个参数是 是否保证等比
动不动就内存溢出。。
建议使用
Bitmap dragimg=Bitmap.createScaledBitmap(bmp, lockWidth, lockWidth, true);
方法
输入值分别是
被转换的图片对象
宽和高
最后一个参数是 是否保证等比
可以我不想要整张图片.我只想要部分的,就是我不想要最上面的...
你看看你吧图片放到哪一个文件夹里面了。
如果你放在
xxhdpi文件夹里面的话,图片读出来会比真实的要小。有可能会出你列出来的那种错误。
可以我不想要整张图片.我只想要部分的,就是我不想要最上面的...
你看看你吧图片放到哪一个文件夹里面了。
如果你放在
xxhdpi文件夹里面的话,图片读出来会比真实的要小。有可能会出你列出来的那种错误。
我其实就是截屏.我得到的一个Bitmap是包括状态栏的,问题状态栏还是白色的,我现在就是要把最上面的那部分白色去掉.然后保存起来
可以我不想要整张图片.我只想要部分的,就是我不想要最上面的...
你看看你吧图片放到哪一个文件夹里面了。
如果你放在
xxhdpi文件夹里面的话,图片读出来会比真实的要小。有可能会出你列出来的那种错误。
我其实就是截屏.我得到的一个Bitmap是包括状态栏的,问题状态栏还是白色的,我现在就是要把最上面的那部分白色去掉.然后保存起来
你获取图片bmp
然后bmp.getHeight()就是这个图片的高度,比方300
然后变色的高度为100
那就设置
Bitmap.createBitmap(bmp, 0, 100, bmp.getWidht(), 200);
就行了。
是指从一张图片上取某一块,从y点开始到height结束的区域。而你的方法中截取的已经超出图片范围外了。如:
Bitmap android.graphics.Bitmap.createBitmap(source, 0, 0, 100, 100)就是从图片source的左上角到图片100宽和100高截图
我的是:Bitmap.createBitmap(b1, 0, 20, b1.getWidth(),b1.getHeight());
,宽度和高度都没有超过,但是这个方法的计算方式是:20+b1.getHeight(),这个肯定超过了...
所以我觉得她这个方法的计算方式有问题
可以我不想要整张图片.我只想要部分的,就是我不想要最上面的...
你看看你吧图片放到哪一个文件夹里面了。
如果你放在
xxhdpi文件夹里面的话,图片读出来会比真实的要小。有可能会出你列出来的那种错误。
我其实就是截屏.我得到的一个Bitmap是包括状态栏的,问题状态栏还是白色的,我现在就是要把最上面的那部分白色去掉.然后保存起来
你获取图片bmp
然后bmp.getHeight()就是这个图片的高度,比方300
然后变色的高度为100
那就设置
Bitmap.createBitmap(bmp, 0, 100, bmp.getWidht(), 200);
就行了。
这样子导致我真正的图片大小只有100个单位的高度
因为是从100-200,后面的200-300也是需要的,却截取不了
我的是:Bitmap.createBitmap(b1, 0, 20, b1.getWidth(),b1.getHeight());
,宽度和高度都没有超过,但是这个方法的计算方式是:20+b1.getHeight(),这个肯定超过了...
所以我觉得她这个方法的计算方式有问题
哦,哪我们就错了,后两个参数应该就是截取后图片的高度和宽度吧