From 01e6565dd4c5c3e162cc4d44194b549bebd7324d Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Sat, 7 Feb 2015 00:13:41 +0100 Subject: [PATCH] Try to skip mapping of missing TrueType glyphs Also don't skip mapping of glyphs which are empty, if the corresponding charCode is included in toUnicode. --- src/core/fonts.js | 21 ++++++++++++++++----- test/pdfs/.gitignore | 2 ++ test/pdfs/bug893730.pdf | Bin 0 -> 30845 bytes test/pdfs/issue5704.pdf | Bin 0 -> 17915 bytes test/test_manifest.json | 14 ++++++++++++++ 5 files changed, 32 insertions(+), 5 deletions(-) create mode 100644 test/pdfs/bug893730.pdf create mode 100644 test/pdfs/issue5704.pdf diff --git a/src/core/fonts.js b/src/core/fonts.js index 8a191e1b5..93a51604e 100644 --- a/src/core/fonts.js +++ b/src/core/fonts.js @@ -4070,11 +4070,21 @@ var Font = (function FontClosure() { } } - var charCodeToGlyphId = [], charCode; + var charCodeToGlyphId = [], charCode, toUnicode = properties.toUnicode; + + function hasGlyph(glyphId, charCode) { + if (!missingGlyphs[glyphId]) { + return true; + } + if (charCode >= 0 && toUnicode.has(charCode)) { + return true; + } + return false; + } + if (properties.type === 'CIDFontType2') { var cidToGidMap = properties.cidToGidMap || []; var isCidToGidMapEmpty = cidToGidMap.length === 0; - var toUnicode = properties.toUnicode; properties.cMap.forEach(function(charCode, cid) { assert(cid <= 0xffff, 'Max size of CID is 65,535'); @@ -4086,7 +4096,7 @@ var Font = (function FontClosure() { } if (glyphId >= 0 && glyphId < numGlyphs && - (!missingGlyphs[glyphId] || toUnicode.has(charCode))) { + hasGlyph(glyphId, charCode)) { charCodeToGlyphId[charCode] = glyphId; } }); @@ -4146,7 +4156,8 @@ var Font = (function FontClosure() { var found = false; for (i = 0; i < cmapMappingsLength; ++i) { - if (cmapMappings[i].charCode === unicodeOrCharCode) { + if (cmapMappings[i].charCode === unicodeOrCharCode && + hasGlyph(cmapMappings[i].glyphId, unicodeOrCharCode)) { charCodeToGlyphId[charCode] = cmapMappings[i].glyphId; found = true; break; @@ -4156,7 +4167,7 @@ var Font = (function FontClosure() { // Try to map using the post table. There are currently no known // pdfs that this fixes. var glyphId = properties.glyphNames.indexOf(glyphName); - if (glyphId > 0) { + if (glyphId > 0 && hasGlyph(glyphId, -1)) { charCodeToGlyphId[charCode] = glyphId; } } diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index 8108d7c56..d05e4f41f 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -59,6 +59,8 @@ !zerowidthline.pdf !bug868745.pdf !mmtype1.pdf +!issue5704.pdf +!bug893730.pdf !bug864847.pdf !issue1002.pdf !issue925.pdf diff --git a/test/pdfs/bug893730.pdf b/test/pdfs/bug893730.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8c6f8186297e9d26e189268b293a9378fb5a4000 GIT binary patch literal 30845 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 ZACaiOgVR5Ehmnq%i4mHVR9IHze*r;aq)`9> literal 0 HcmV?d00001 diff --git a/test/pdfs/issue5704.pdf b/test/pdfs/issue5704.pdf new file mode 100644 index 0000000000000000000000000000000000000000..585a7d1dde5b486ac3eca2b3f038649abb6bca77 GIT binary patch literal 17915 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 literal 0 HcmV?d00001 diff --git a/test/test_manifest.json b/test/test_manifest.json index 797ddd81f..cb799c883 100644 --- a/test/test_manifest.json +++ b/test/test_manifest.json @@ -1022,6 +1022,20 @@ "link": true, "type": "eq" }, + { "id": "issue5704", + "file": "pdfs/issue5704.pdf", + "md5": "6e0b62585feef24dff2d7e7687cd8128", + "rounds": 1, + "link": false, + "type": "eq" + }, + { "id": "bug893730", + "file": "pdfs/bug893730.pdf", + "md5": "2587379fb1b3bbff89c14f0863e78383", + "rounds": 1, + "link": false, + "type": "eq" + }, { "id": "pdfkit_compressed", "file": "pdfs/pdfkit_compressed.pdf", "md5": "ffe9c571d0a1572e234253e6c7cdee6c",