Merge pull request #3875 from yurydelendik/issue3025

Removes duplicate entries after reading cmap table
This commit is contained in:
Brendan Dahl 2013-11-07 12:29:25 -08:00
commit 18d8557abd
4 changed files with 18 additions and 1 deletions

View File

@ -3077,6 +3077,17 @@ var Font = (function FontClosure() {
error('cmap table has unsupported format: ' + format);
}
// removing duplicate entries
mappings.sort(function (a, b) {
return a.charcode - b.charcode;
});
for (var i = 1; i < mappings.length; i++) {
if (mappings[i - 1].charcode === mappings[i].charcode) {
mappings.splice(i, 1);
i--;
}
}
return {
platformId: potentialTable.platformId,
encodingId: potentialTable.encodingId,
@ -3758,7 +3769,6 @@ var Font = (function FontClosure() {
if (isTrueType) {
var isGlyphLocationsLong = int16([tables.head.data[50],
tables.head.data[51]]);
sanitizeGlyphLocations(tables.loca, tables.glyf, numGlyphs,
isGlyphLocationsLong, hintsValid, dupFirstEntry);
}

View File

@ -52,6 +52,7 @@
!noembed-eucjp.pdf
!noembed-sjis.pdf
!vertical.pdf
!issue3025.pdf
!issue2099-1.pdf
!issue3371.pdf
!issue2956.pdf

BIN
test/pdfs/issue3025.pdf Normal file

Binary file not shown.

View File

@ -1386,6 +1386,12 @@
"rounds": 1,
"type": "eq"
},
{ "id": "issue3025",
"file": "pdfs/issue3025.pdf",
"md5": "8e4e8eacbd7c4c248deeca0ec49d38da",
"rounds": 1,
"type": "eq"
},
{ "id": "issue2177-eq",
"file": "pdfs/issue2177.pdf",
"md5": "48a808278bf31de8414c4e03ecd0900a",