Add a work-around, in glyphlist.js, for bad PDF generators which use a non-standard /f_f string in the Encoding dictionary when referring to the ff ligature (issue 11016)

This patch will not incur any (measurable) overhead, since the glyphlist is already quite long and one more entry won't really matter, which is important given that this sort of PDF corruption ought to be very rare.

Furthermore, this patch purposely does *not* add a bunch of similarly modified ligature names on pure speculation. Any similar additions, for other ligatures, should only be made if there's real-world examples of PDF files where that's actually necessary.
This commit is contained in:
Jonas Jenwald 2019-07-30 16:48:27 +02:00
parent 323b2eabcf
commit 9ad50521b1
4 changed files with 9 additions and 0 deletions

View File

@ -1826,6 +1826,7 @@ var getGlyphsUnicode = getLookupTableFactory(function (t) {
t['feicoptic'] = 0x03E5; t['feicoptic'] = 0x03E5;
t['female'] = 0x2640; t['female'] = 0x2640;
t['ff'] = 0xFB00; t['ff'] = 0xFB00;
t['f_f'] = 0xFB00; // Fixes issue 11016.
t['ffi'] = 0xFB03; t['ffi'] = 0xFB03;
t['ffl'] = 0xFB04; t['ffl'] = 0xFB04;
t['fi'] = 0xFB01; t['fi'] = 0xFB01;

View File

@ -79,6 +79,7 @@
!issue10529.pdf !issue10529.pdf
!issue10542_reduced.pdf !issue10542_reduced.pdf
!issue10665_reduced.pdf !issue10665_reduced.pdf
!issue11016_reduced.pdf
!bad-PageLabels.pdf !bad-PageLabels.pdf
!decodeACSuccessive.pdf !decodeACSuccessive.pdf
!filled-background.pdf !filled-background.pdf

Binary file not shown.

View File

@ -39,6 +39,13 @@
"lastPage": 1, "lastPage": 1,
"type": "text" "type": "text"
}, },
{ "id": "issue11016",
"file": "pdfs/issue11016_reduced.pdf",
"md5": "b75578bd052d2e6acdcc85b615eab6b1",
"rounds": 1,
"link": false,
"type": "text"
},
{ "id": "issue1293", { "id": "issue1293",
"file": "pdfs/issue1293r.pdf", "file": "pdfs/issue1293r.pdf",
"md5": "4a098f5051f34fab036f5bbe88f8deef", "md5": "4a098f5051f34fab036f5bbe88f8deef",