如何水平翻转画布图像?
我试过
CanvasImage ci = graphics().createImage(width, height);
ci.canvas().scale(-1.0F, 1.0F);
ci.canvas().drawImage(image, 0, 0);
但它不起作用。
答案 0 :(得分:1)
你不能简单地翻转比例,因为这将导致从0到-width的渲染,这将超出你正在绘制的图像的边界。
您需要翻译图像的宽度,以便从宽度渲染到0:
CanvasImage ci = graphics().createImage(width, height);
ci.canvas().translate(image.width(), 0);
ci.canvas().scale(-1.0F, 1.0F);
ci.canvas().drawImage(image, 0, 0);