我可能会给你一个答案。
Picture 类用于存储不改变的图片,然后将它们写入画布。
例如,您可以有 4 个不同的图片对象,每个对象都有部分贝塞尔曲线,然后在需要时编写它们。
一些代码可能看起来像这样:
Picture b1 = new Picture();
Canvas c1 = b1.beginRecording(500, height);
// draw
b1.endRecording();
Picture b2 = new Picture();
Canvas c2 = b2.beginRecording(500, height);
c2.translate(-500, 0);
// draw
b2.endRecording();
Picture b3 = new Picture();
Canvas c3 = b3.beginRecording(500, height);
c3.translate(-1000, 0);
// draw
b3.endRecording();
Picture b4; = new Picture();
Canvas c4 = b4.beginRecording(500, height);
c4.translate(-1500, 0);
// draw
b4.endRecording();
(if x < 500) {
// draw c1
}
...
可能有一种方法只画一次,而不是 4 次,但我只是发布我知道的作品。如果你能找到划分画布的方法,那么你只需要绘制一次。