Prevent readCmapTable from failing if the cmap is missing in TrueType fonts

Fixes http://arrow.dit.ie/cgi/viewcontent.cgi?article=1000&context=aaschadpoth#page=3.
This commit is contained in:
Jonas Jenwald 2015-11-08 13:18:23 +01:00
parent 1280b7b76b
commit ff64ef0243
4 changed files with 17 additions and 0 deletions

View File

@ -3226,6 +3226,15 @@ var Font = (function FontClosure() {
* PDF spec
*/
function readCmapTable(cmap, font, isSymbolicFont, hasEncoding) {
if (!cmap) {
warn('No cmap table available.');
return {
platformId: -1,
encodingId: -1,
mappings: [],
hasShortCmap: false
};
}
var segment;
var start = (font.start ? font.start : 0) + cmap.offset;
font.pos = start;

View File

@ -2,6 +2,7 @@
*.error
!tracemonkey.pdf
!TrueType_without_cmap.pdf
!franz.pdf
!franz_2.pdf
!xref_command_missing.pdf

Binary file not shown.

View File

@ -1196,6 +1196,13 @@
"rounds": 1,
"type": "eq"
},
{ "id": "TrueType_without_cmap",
"file": "pdfs/TrueType_without_cmap.pdf",
"md5": "afca8bb11f2e1f7298b4e5dd85785fb0",
"link": false,
"rounds": 1,
"type": "eq"
},
{ "id": "issue3323",
"file": "pdfs/issue3323.pdf",
"md5": "1a14ff574013caeafa9d598269988764",