From 6e1d131384f7d218c7f5f73c0d54b1554f529052 Mon Sep 17 00:00:00 2001 From: Brendan Dahl Date: Tue, 1 Mar 2016 17:05:33 -0800 Subject: [PATCH] For CIDFontType2 use CID as glyph ID when missing CID to GID map. --- src/core/fonts.js | 2 +- test/pdfs/.gitignore | 1 + test/pdfs/issue4402_reduced.pdf | Bin 0 -> 22346 bytes test/test_manifest.json | 7 +++++++ 4 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 test/pdfs/issue4402_reduced.pdf diff --git a/src/core/fonts.js b/src/core/fonts.js index 0c511f8aa..db379ebde 100644 --- a/src/core/fonts.js +++ b/src/core/fonts.js @@ -2279,7 +2279,7 @@ var Font = (function FontClosure() { assert(cid <= 0xffff, 'Max size of CID is 65,535'); var glyphId = -1; if (isCidToGidMapEmpty) { - glyphId = charCode; + glyphId = cid; } else if (cidToGidMap[cid] !== undefined) { glyphId = cidToGidMap[cid]; } diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index 911781e82..dc72ceaab 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -67,6 +67,7 @@ !devicen.pdf !cmykjpeg.pdf !issue840.pdf +!issue4402_reduced.pdf !issue845r.pdf !issue3405r.pdf !issue3438.pdf diff --git a/test/pdfs/issue4402_reduced.pdf b/test/pdfs/issue4402_reduced.pdf new file mode 100644 index 0000000000000000000000000000000000000000..bcccd34730f743da7623cb91bdd77add8ca8f0ab GIT binary patch literal 22346 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 F{U7aS1YH0C literal 0 HcmV?d00001 diff --git a/test/test_manifest.json b/test/test_manifest.json index 1bbc7f005..60b73b97d 100644 --- a/test/test_manifest.json +++ b/test/test_manifest.json @@ -902,6 +902,13 @@ "rounds": 1, "type": "eq" }, + { "id": "issue4402_reduced", + "file": "pdfs/issue4402_reduced.pdf", + "md5": "6cc7e61a581889eec3ed7402d87161c4", + "link": false, + "rounds": 1, + "type": "eq" + }, { "id": "protectip", "file": "pdfs/protectip.pdf", "md5": "676e7a7b8f96d04825361832b1838a93",