gpt4 book ai didi

android - 使用 Matrix Android 进行翻译

转载 作者:行者123 更新时间:2023-11-29 01:57:55 25 4
gpt4 key购买 nike

我正在尝试使用矩阵翻译图像我的代码是

Bitmap myImg = BitmapFactory.decodeResource(getResources(), R.drawable.calednder_c);

Matrix matrix = new Matrix();

matrix.setTranslate(500,300 );
Bitmap rotated = Bitmap.createBitmap(myImg, 0, 0, myImg.getWidth(), myImg.getHeight(),
matrix, true);

circle.setImageBitmap(rotated);

当我调用我的 animate 方法时什么也没发生。当我写 preRotate(angle); 它旋转并且它也缩放但不翻译为什么我错过了

提前致谢

最佳答案

这是 createBitmap 源代码中的相应 fragment :

final boolean transformed = !m.rectStaysRect();

RectF deviceR = new RectF();
m.mapRect(deviceR, dstR);

neww = Math.round(deviceR.width());
newh = Math.round(deviceR.height());

bitmap = createBitmap(neww, newh, transformed ? Config.ARGB_8888 : newConfig,
transformed || source.hasAlpha());

canvas.translate(-deviceR.left, -deviceR.top);
canvas.concat(m);

paint = new Paint();
paint.setFilterBitmap(filter);
if (transformed) {
paint.setAntiAlias(true);
}

它使创建的位图大到足以容纳原始位图中所有需要的像素。这是由新尺寸和 canvas.translate 调用引起的。

最终效果是矩阵中的翻译被忽略了。

关于android - 使用 Matrix Android 进行翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14157282/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com