From f8744ac9544c56003a0a51159a762c3aeb3c4aad Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Thu, 10 Dec 2020 14:22:05 +0100 Subject: [PATCH] Ignore color-operators in Type3 glyphs beginning with a `d1` operator (issue 12705) Please refer to the PDF specification at https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/PDF32000_2008.pdf#G8.1977497 and https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/PDF32000_2008.pdf#G7.3998470 This patch removes the color-operators in the evaluator, since that should be more efficient than doing it repeatedly in the main-thread when rendering the Type3 glyphs. --- src/core/evaluator.js | 75 +++++++++++++++++++++++++++++++++++++-- test/pdfs/.gitignore | 1 + test/pdfs/issue12705.pdf | Bin 0 -> 53894 bytes test/test_manifest.json | 8 ++++- 4 files changed, 81 insertions(+), 3 deletions(-) create mode 100644 test/pdfs/issue12705.pdf diff --git a/src/core/evaluator.js b/src/core/evaluator.js index 6d1d1fe32afa74..10a3135c74910f 100644 --- a/src/core/evaluator.js +++ b/src/core/evaluator.js @@ -3602,7 +3602,7 @@ class TranslatedFont { var charProcOperatorList = Object.create(null); for (const key of charProcs.getKeys()) { - loadCharProcsPromise = loadCharProcsPromise.then(function () { + loadCharProcsPromise = loadCharProcsPromise.then(() => { var glyphStream = charProcs.get(key); var operatorList = new OperatorList(); return type3Evaluator @@ -3612,7 +3612,16 @@ class TranslatedFont { resources: fontResources, operatorList, }) - .then(function () { + .then(() => { + // According to the PDF specification, section "9.6.5 Type 3 Fonts" + // and "Table 113": + // "A glyph description that begins with the d1 operator should + // not execute any operators that set the colour (or other + // colour-related parameters) in the graphics state; + // any use of such operators shall be ignored." + if (operatorList.fnArray[0] === OPS.setCharWidthAndBounds) { + this._removeType3ColorOperators(operatorList); + } charProcOperatorList[key] = operatorList.getIR(); for (const dependency of operatorList.dependencies) { @@ -3631,6 +3640,68 @@ class TranslatedFont { }); return this.type3Loaded; } + + /** + * @private + */ + _removeType3ColorOperators(operatorList) { + if ( + typeof PDFJSDev === "undefined" || + PDFJSDev.test("!PRODUCTION || TESTING") + ) { + assert( + operatorList.fnArray[0] === OPS.setCharWidthAndBounds, + "Type3 glyph shall start with the d1 operator." + ); + } + let i = 1, + ii = operatorList.length; + while (i < ii) { + switch (operatorList.fnArray[i]) { + case OPS.setStrokeColorSpace: + case OPS.setFillColorSpace: + case OPS.setStrokeColor: + case OPS.setStrokeColorN: + case OPS.setFillColor: + case OPS.setFillColorN: + case OPS.setStrokeGray: + case OPS.setFillGray: + case OPS.setStrokeRGBColor: + case OPS.setFillRGBColor: + case OPS.setStrokeCMYKColor: + case OPS.setFillCMYKColor: + case OPS.shadingFill: + case OPS.setRenderingIntent: + operatorList.fnArray.splice(i, 1); + operatorList.argsArray.splice(i, 1); + ii--; + continue; + + case OPS.setGState: + const gStateObj = operatorList.argsArray[i]; + let j = 0, + jj = gStateObj.length; + while (j < jj) { + const [gStateKey] = gStateObj[j]; + switch (gStateKey) { + case "TR": + case "TR2": + case "HT": + case "BG": + case "BG2": + case "UCR": + case "UCR2": + gStateObj.splice(j); + jj--; + continue; + } + j++; + } + break; + } + i++; + } + } } class StateManager { diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index 6b7ae9e9a13d91..9bedc1ad892d1a 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -222,6 +222,7 @@ !issue5734.pdf !issue4875.pdf !issue11740_reduced.pdf +!issue12705.pdf !issue4881.pdf !issue5994.pdf !issue6151.pdf diff --git a/test/pdfs/issue12705.pdf b/test/pdfs/issue12705.pdf new file mode 100644 index 0000000000000000000000000000000000000000..74a0143d16cafbc71fd99564bf067a6167ad042a GIT binary patch literal 53894 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 literal 0 HcmV?d00001 diff --git a/test/test_manifest.json b/test/test_manifest.json index 19a428235dfea2..e1578916f6056a 100644 --- a/test/test_manifest.json +++ b/test/test_manifest.json @@ -4531,6 +4531,12 @@ "annotations": true, "type": "eq" }, + { "id": "issue12705", + "file": "pdfs/issue12705.pdf", + "md5": "d8725b9dcfef72fd4fa4a39cab711624", + "rounds": 1, + "type": "eq" + }, { "id": "annotation-strikeout", "file": "pdfs/annotation-strikeout.pdf", "md5": "6624e6b5bedd2f2855b6ab12bbf93c57", @@ -4894,5 +4900,5 @@ "rounds": 1, "type": "eq", "annotations": true - } + } ]