Merge pull request #13168 from janpe2/ttf-uni-glyphs
Use post table when Encoding has only Differences
This commit is contained in:
commit
5a64157a2f
@ -2901,14 +2901,21 @@ var Font = (function FontClosure() {
|
||||
}
|
||||
|
||||
// Last, try to map any missing charcodes using the post table.
|
||||
if (properties.glyphNames && baseEncoding.length) {
|
||||
if (
|
||||
properties.glyphNames &&
|
||||
(baseEncoding.length || this.differences.length)
|
||||
) {
|
||||
for (let i = 0; i < 256; ++i) {
|
||||
if (charCodeToGlyphId[i] === undefined && baseEncoding[i]) {
|
||||
glyphName = baseEncoding[i];
|
||||
const glyphId = properties.glyphNames.indexOf(glyphName);
|
||||
if (glyphId > 0 && hasGlyph(glyphId)) {
|
||||
charCodeToGlyphId[i] = glyphId;
|
||||
}
|
||||
if (charCodeToGlyphId[i] !== undefined) {
|
||||
continue;
|
||||
}
|
||||
glyphName = this.differences[i] || baseEncoding[i];
|
||||
if (!glyphName) {
|
||||
continue;
|
||||
}
|
||||
const glyphId = properties.glyphNames.indexOf(glyphName);
|
||||
if (glyphId > 0 && hasGlyph(glyphId)) {
|
||||
charCodeToGlyphId[i] = glyphId;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
1
test/pdfs/.gitignore
vendored
1
test/pdfs/.gitignore
vendored
@ -158,6 +158,7 @@
|
||||
!issue6019.pdf
|
||||
!issue6621.pdf
|
||||
!issue6286.pdf
|
||||
!issue13107_reduced.pdf
|
||||
!issue1055r.pdf
|
||||
!issue11713.pdf
|
||||
!issue1293r.pdf
|
||||
|
BIN
test/pdfs/issue13107_reduced.pdf
Normal file
BIN
test/pdfs/issue13107_reduced.pdf
Normal file
Binary file not shown.
@ -595,6 +595,12 @@
|
||||
"link": false,
|
||||
"type": "eq"
|
||||
},
|
||||
{ "id": "issue13107",
|
||||
"file": "pdfs/issue13107_reduced.pdf",
|
||||
"md5": "13c8d12223dec2752d3c90d250db32b7",
|
||||
"rounds": 1,
|
||||
"type": "eq"
|
||||
},
|
||||
{ "id": "bug1186827",
|
||||
"file": "pdfs/bug1186827.pdf",
|
||||
"md5": "6c5526ae1a9d66cb517153001afc196e",
|
||||
|
Loading…
x
Reference in New Issue
Block a user