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破坏我的交叉图像。我没看好地方谢谢:)