From 5efaaa0fea45bdc2ce353d1aebc66b27af47e7cc Mon Sep 17 00:00:00 2001 From: Brendan Dahl Date: Mon, 14 Jun 2021 21:09:45 -0700 Subject: [PATCH] Fix how patterns are applied to image mask objects. Note, this only really fixes Radial/Axial shading patterns with masks. I'm guessing tiling patterns and mesh patterns would also be broken if applied like the test pdf. Hopefully I'll have some time to make test cases for the other shadings. Fixes #13372 --- src/display/canvas.js | 51 ++++++++++++++++++++++++++++++---- src/display/pattern_helper.js | 18 +++++++----- test/pdfs/.gitignore | 1 + test/pdfs/issue13372.pdf | Bin 0 -> 85444 bytes test/test_manifest.json | 6 ++++ 5 files changed, 64 insertions(+), 12 deletions(-) create mode 100644 test/pdfs/issue13372.pdf diff --git a/src/display/canvas.js b/src/display/canvas.js index 4815f260a..c5a1d21d2 100644 --- a/src/display/canvas.js +++ b/src/display/canvas.js @@ -13,6 +13,11 @@ * limitations under the License. */ +import { + createMatrix, + getShadingPattern, + TilingPattern, +} from "./pattern_helper.js"; import { FONT_IDENTITY_MATRIX, IDENTITY_MATRIX, @@ -27,7 +32,6 @@ import { Util, warn, } from "../shared/util.js"; -import { getShadingPattern, TilingPattern } from "./pattern_helper.js"; // contexts store most of the state we need natively. // However, PDF needs a bit more state, which we store here. @@ -193,6 +197,17 @@ function addContextCurrentTransform(ctx) { }; } +function getAdjustmentTransformation(transform, width, height) { + // The pattern will be created at the size of the current page or form object, + // but the mask is usually scaled differently and offset, so we must account + // for these to shift and rescale the pattern to the correctly location. + let patternTransform = createMatrix(transform); + patternTransform = patternTransform.scale(1 / width, -1 / height); + patternTransform = patternTransform.translate(0, -height); + patternTransform = patternTransform.inverse(); + return patternTransform; +} + class CachedCanvases { constructor(canvasFactory) { this.canvasFactory = canvasFactory; @@ -2294,8 +2309,16 @@ const CanvasGraphics = (function CanvasGraphicsClosure() { maskCtx.globalCompositeOperation = "source-in"; + let patternTransform = null; + if (isPatternFill) { + patternTransform = getAdjustmentTransformation( + ctx.mozCurrentTransform, + width, + height + ); + } maskCtx.fillStyle = isPatternFill - ? fillColor.getPattern(maskCtx, this) + ? fillColor.getPattern(maskCtx, this, false, patternTransform) : fillColor; maskCtx.fillRect(0, 0, width, height); @@ -2332,14 +2355,23 @@ const CanvasGraphics = (function CanvasGraphicsClosure() { maskCtx.globalCompositeOperation = "source-in"; + const ctx = this.ctx; + let patternTransform = null; + if (isPatternFill) { + patternTransform = getAdjustmentTransformation( + ctx.mozCurrentTransform, + width, + height + ); + } + maskCtx.fillStyle = isPatternFill - ? fillColor.getPattern(maskCtx, this) + ? fillColor.getPattern(maskCtx, this, false, patternTransform) : fillColor; maskCtx.fillRect(0, 0, width, height); maskCtx.restore(); - const ctx = this.ctx; for (let i = 0, ii = positions.length; i < ii; i += 2) { ctx.save(); ctx.transform( @@ -2381,8 +2413,17 @@ const CanvasGraphics = (function CanvasGraphicsClosure() { maskCtx.globalCompositeOperation = "source-in"; + let patternTransform = null; + if (isPatternFill) { + patternTransform = getAdjustmentTransformation( + ctx.mozCurrentTransform, + width, + height + ); + } + maskCtx.fillStyle = isPatternFill - ? fillColor.getPattern(maskCtx, this) + ? fillColor.getPattern(maskCtx, this, false, patternTransform) : fillColor; maskCtx.fillRect(0, 0, width, height); diff --git a/src/display/pattern_helper.js b/src/display/pattern_helper.js index 7545a7408..84abe7057 100644 --- a/src/display/pattern_helper.js +++ b/src/display/pattern_helper.js @@ -72,11 +72,11 @@ class RadialAxialShadingPattern extends BaseShadingPattern { this._matrix = IR[8]; } - getPattern(ctx, owner, shadingFill) { + getPattern(ctx, owner, shadingFill = false, patternTransform = null) { const tmpCanvas = owner.cachedCanvases.getCanvas( "pattern", - ctx.canvas.width, - ctx.canvas.height, + owner.ctx.canvas.width, + owner.ctx.canvas.height, true ); @@ -121,7 +121,11 @@ class RadialAxialShadingPattern extends BaseShadingPattern { tmpCtx.fill(); const pattern = ctx.createPattern(tmpCanvas.canvas, "repeat"); - pattern.setTransform(createMatrix(ctx.mozCurrentTransformInverse)); + if (patternTransform) { + pattern.setTransform(patternTransform); + } else { + pattern.setTransform(createMatrix(ctx.mozCurrentTransformInverse)); + } return pattern; } } @@ -376,7 +380,7 @@ class MeshShadingPattern extends BaseShadingPattern { }; } - getPattern(ctx, owner, shadingFill) { + getPattern(ctx, owner, shadingFill = false, patternTransform = null) { applyBoundingBox(ctx, this._bbox); let scale; if (shadingFill) { @@ -599,7 +603,7 @@ class TilingPattern { } } - getPattern(ctx, owner, shadingFill) { + getPattern(ctx, owner, shadingFill = false, patternTransform = null) { ctx = this.ctx; // PDF spec 8.7.2 NOTE 1: pattern's matrix is relative to initial matrix. let matrix = ctx.mozCurrentTransformInverse; @@ -627,4 +631,4 @@ class TilingPattern { } } -export { getShadingPattern, TilingPattern }; +export { createMatrix, getShadingPattern, TilingPattern }; diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index 40bf67330..ebf34cacb 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -406,6 +406,7 @@ !issue13193.pdf !annotation-underline-without-appearance.pdf !issue269_2.pdf +!issue13372.pdf !annotation-strikeout.pdf !annotation-strikeout-without-appearance.pdf !annotation-squiggly.pdf diff --git a/test/pdfs/issue13372.pdf b/test/pdfs/issue13372.pdf new file mode 100644 index 0000000000000000000000000000000000000000..4cfbcd89e5bb5a6b1d120deed16934c23cccd024 GIT binary patch literal 85444 zcmZ_12|!cVx;A_-4VnPb1Q67Ql1T(XrlJjCkqnrilp>(T0WAtw^f(10YDN1I14Pk~ zAWkjx0MdfiTBNj9oURd@2t6L8+Nwu;m7#*gc_>&b|MTvE_T2CPwk0GxJ7Mp&*LvRP zecorSj!jffoe&xn?ljigTU_NdQ4k_nxp1k|29>8V)=bO%MQ!-a%41OP;(K*mx zrr&ReI1TOze|2^#>sMt4C#EmX41PB=V@bMvsNHr!UD^Etu;>mz(62CcrnW!IgwMz4~bA%a0Cz zQjxArU$%1b&{qsz^}Ctc^bEWs2&1-1`pXy4>D&J{^98T2)G7GA#CHXu(b0n^N!LXO zqP6Uoo;Gy)Od}0`N0QWuX@I|+;n3|vgD1W1#5C7m-u=tpPl|A28tc`&^m6cv2mdJ3 zJYi13FPqzbJ;Cp$YqOWEn;YsBf`80o+RHO%ZpqO3h2m}IGq3&%^Lp_8!S5aVGq1Wr zurf1e$)e08mE0*>7Y*bU+<=`{+mFXy(ZHs`28gr zG(5v6IR&dTmn_cG3f`U+ij!QTU7eVjtysBy)yfq#0I<(KdV>{;xRjKs>Fey{*9n(K z;~3*)IgN_xf(bYjSH5QXiq-VJ(a}Q~APtqiJuy0ZaCrJwnnq-3(|8Y~Rk0VC-^+O+ zt*Wr7VDkkZai=!TD|Ybr4;i^eqbR5a`^;CcUzuC{iHhek(Qvb_+DS#PV&?>H-)AT` zKkPP+Sg$Z`t}D5$mbl&5E!GuAm3Bqks65{lks#BwW#kHUng%z{1{q8BXPI_EkfA@< zxGnR7c7eD;<;~*8i;aE~H_keBv7U=BYh>35Hk)MUBdiy^aW)NfO4{b^!X+Q*7W2RG zZ_X~O8P9qn?F!#^lYK*&DFoND*%8*P%F71kYkfxCk(6Kk?IV`+X@`D=*{Erg z_IOBTA?1?0my&zk?-lQU&JD8txnie8=X7W0iUrnAFaEaGMw2KqgP&cnJWrKlE3VC8Xb_274MlSNh;@4Vb5XqJ1HE#d zatZIsM!{xr{WDqkk3p^JAu%Q#9e9jA+b784Vl+InWenSMBX2RkW0zDg``V}8&1

ji_&46IBuW&d#UF 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 literal 0 HcmV?d00001 diff --git a/test/test_manifest.json b/test/test_manifest.json index cbcc08743..355966334 100644 --- a/test/test_manifest.json +++ b/test/test_manifest.json @@ -1566,6 +1566,12 @@ "rounds": 1, "type": "eq" }, + { "id": "issue13372", + "file": "pdfs/issue13372.pdf", + "md5": "0bc5329623fd554174c5e7653f904e28", + "rounds": 1, + "type": "eq" + }, { "id": "simpletype3font-text", "file": "pdfs/simpletype3font.pdf", "md5": "b374c7543920840c61999e9e86939f99",