Take the mask-offset into account when rendering repeated image masks (bug 1799927)

*Please note:* As usual when I'm working with the `src/display/canvas.js` code I don't really know what I'm doing, but it at least *appears* to work.
This commit is contained in:
Jonas Jenwald 2022-11-13 16:15:30 +01:00
parent bfe6ff5893
commit 3e4caf2e13

View File

@ -2902,7 +2902,14 @@ class CanvasGraphics {
ctx.transform(scaleX, skewX, skewY, scaleY, 0, 0);
const mask = this._createMaskCanvas(img);
ctx.setTransform(1, 0, 0, 1, 0, 0);
ctx.setTransform(
1,
0,
0,
1,
mask.offsetX - currentTransform[4],
mask.offsetY - currentTransform[5]
);
for (let i = 0, ii = positions.length; i < ii; i += 2) {
const trans = Util.transform(currentTransform, [
scaleX,