]> git.parisson.com Git - pdf.js.git/commitdiff
remove glyph references outside range of avaialable glyphs
authornotmasteryet <async.processingjs@yahoo.com>
Thu, 8 Dec 2011 03:38:34 +0000 (21:38 -0600)
committernotmasteryet <async.processingjs@yahoo.com>
Thu, 8 Dec 2011 03:38:34 +0000 (21:38 -0600)
src/fonts.js
test/pdfs/.gitignore
test/pdfs/freeculture.pdf [new file with mode: 0644]
test/test_manifest.json

index 1a4366c198dcb4dae6ac1f149f7ba0385d5d7a0e..7d350ebc5bdd1b9795ce9005c1ef54ba23d298c7 100644 (file)
@@ -1785,6 +1785,12 @@ var Font = (function Font() {
         }
         properties.hasShortCmap = hasShortCmap;
 
+        // remove glyph references outside range of avaialable glyphs
+        for (var i = 0, ii = ids.length; i < ii; i++) {
+          if (ids[i] >= numGlyphs)
+            ids[i] = 0;
+        }
+
         createGlyphNameMap(glyphs, ids, properties);
         this.glyphNameMap = properties.glyphNameMap;
 
index 325987de68abf2139364dbbe7c776fb1ad727ba3..7a36acd582f4cbfb9a8a107cb8a2ce63c13b04f6 100644 (file)
@@ -17,3 +17,4 @@
 !devicen.pdf
 !cmykjpeg.pdf
 !issue840.pdf
+!freeculture.pdf
diff --git a/test/pdfs/freeculture.pdf b/test/pdfs/freeculture.pdf
new file mode 100644 (file)
index 0000000..8b27e93
Binary files /dev/null and b/test/pdfs/freeculture.pdf differ
index bd50068f7ba17c6e0acc98d575a7152b30b9a713..27508032cec40535312302109378f0640d4fe48d 100644 (file)
        "rounds": 1,
        "type": "eq"
     },
+    {  "id": "freeculture",
+       "file": "pdfs/freeculture.pdf",
+       "md5": "dcdf3a8268e6a18938a42d5149efcfca",
+       "rounds": 1,
+       "pageLimit": 5,
+       "type": "eq"
+    },
     {  "id": "wnv_chinese-pdf",
        "file": "pdfs/wnv_chinese.pdf",
        "md5": "db682638e68391125e8982d3c984841e",