比例尺位图保持宽高比并同时适合宽度和高度

比例尺位图保持宽高比并同时适合宽度和高度,第1张

概述我想缩放位图以保持纵横比,但适合所需的尺寸.Thisanswer缩放位图并保持纵横比,但是除非图像是完美的正方形,否则会留一些空白.我需要同时填充宽度和高度,就像ImageView的FIT_XYScaleType属性一样.解决方法:基于StreetsofBoston’sanswer,我制作了此方法,该方法可以缩放所有Bi

我想缩放位图以保持纵横比,但适合所需的尺寸. This answer缩放位图并保持纵横比,但是除非图像是完美的正方形,否则会留一些空白.我需要同时填充宽度和高度,就像ImageVIEw的FIT_XY ScaleType属性一样.

解决方法:

基于Streets of Boston’s answer,我制作了此方法,该方法可以缩放所有Bitmap并将其返回到所需的宽度和高度,并适合两个尺寸(无空格!).它会自动适应更多水平或更多垂直图像.

public Bitmap resizeBitmapFitXY(int wIDth, int height, Bitmap bitmap){    Bitmap background = Bitmap.createBitmap(wIDth, height, Bitmap.Config.ARGB_8888);    float originalWIDth = bitmap.getWIDth(), originalHeight = bitmap.getHeight();    Canvas canvas = new Canvas(background);    float scale, xTranslation = 0.0f, yTranslation = 0.0f;    if (originalWIDth > originalHeight) {        scale = height/originalHeight;        xTranslation = (wIDth - originalWIDth * scale)/2.0f;    }    else {        scale = wIDth / originalWIDth;        yTranslation = (height - originalHeight * scale)/2.0f;    }    Matrix transformation = new Matrix();    transformation.postTranslate(xTranslation, yTranslation);    transformation.preScale(scale, scale);    Paint paint = new Paint();    paint.setFilterBitmap(true);    canvas.drawBitmap(bitmap, transformation, paint);    return background;}
总结

以上是内存溢出为你收集整理的比例尺位图保持宽高比并同时适合宽度和高度全部内容,希望文章能够帮你解决比例尺位图保持宽高比并同时适合宽度和高度所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1090342.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-27
下一篇 2022-05-27

发表评论

登录后才能评论

评论列表(0条)

保存