Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 放大位图_Java_Android_Image_Bitmap_Rescale - Fatal编程技术网

Java 放大位图

Java 放大位图,java,android,image,bitmap,rescale,Java,Android,Image,Bitmap,Rescale,我想调整一个图像(位图)的最小宽度和高度,并保持比例 现在我尝试了一些方法,但没有得到正确的结果 最接近的方法是使用这种方法: Bitmap.createScaledBitmap(bitmapToScale, newWidth, newHeight, false); 结果是: 交叉图像 图像确实调整了大小,但只有最后一列和最后一行(右侧和底部)变模糊 有人认为Android上调整图像大小的好方法吗 (注:我不能使用xml缩放选项,因为我必须在裁剪后变换图像,而Glide和picasso都不能

我想调整一个图像(位图)的最小宽度和高度,并保持比例

现在我尝试了一些方法,但没有得到正确的结果

最接近的方法是使用这种方法:

Bitmap.createScaledBitmap(bitmapToScale, newWidth, newHeight, false);
结果是:

交叉图像

图像确实调整了大小,但只有最后一列和最后一行(右侧和底部)变模糊

有人认为Android上调整图像大小的好方法吗


(注:我不能使用xml缩放选项,因为我必须在裁剪后变换图像,而Glide和picasso都不能)

位图。createScaledBitmap
是缩放位图的正确方法。您得到的结果可能是在显示时执行不当的结果。如果您使用的是
BitmapShader

,则通常会出现这种结果。调整大小不是问题,但对图像的某些操作会使其在底部扭曲。@pskink不,我不能,因为我需要在cropit的带有fitCenter缩放类型的imageview之后变换图像,裁剪是通过编程完成的。我使用的代码:Bitmap.createScaledBitmap(bitmapToScale,宽度*缩放,高度*缩放,true);然后:Bitmap.createBitmap(scaledbimat,0,0,newWidth,newHeight);谢谢你的回答,但我不使用BitmapShader,图像是用glide 4.0显示的:我只做位图。createScaledBitmap(bitmapToScale,(int)(bitmapToScale.getWidth()*缩放),(int)(bitmapToScale.getHeight()*缩放),true);对于缩放,则为:Bitmap.createBitmap(scaledBitmap,0,0,(int)newWidth,(int)newHeight);你说得对!BitmapShader破坏我的交叉图像。我没看好地方谢谢:)