一旦我在 Canvas
中绘制了我需要的所有内容,是否有办法将其全部移动?喜欢将它全部向下移动 10 个像素?我搜索了 functions和 Google但我没有看到任何有趣的东西。
绘制了很多东西,因此很难重新校准所有应用程序。有什么想法吗?我在 Android 工作,但我认为这不重要。
也许我可以获取像素并逐一复制它们,但我觉得它会很慢。
谢谢。
编辑:对于那些有同样问题的人。如果你想使用 translate()
这就是它的工作原理。如果您设置了 translate(x, y)
,当您绘制某些内容时,它会自动移动这些 (x & y) 值。
例如:如果您执行以下操作:
canvas.translate(5, 10);
然后画一条线:
canvas.drawLine(0, 0, 20, 20).
该行将从 [5,10] 到 [25, 30] 打印。所以你画的所有东西都会自动移动,[5, 10] 变成 [0, 0]。您还可以 canvas.translate(-5, -10)
将其恢复原样(或重置)。
最佳答案
如果我答对了你的问题,你可以使用 canvas.translate()
函数。您可以在 Canvas 的 onDraw()
方法中执行此操作。 Here是函数的文档(滚动到页面的最底部)。希望对您有所帮助!
关于java - 移动 Canvas 中所有绘制的像素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37265209/