From 835a45676727bc436e1279aab10aa067e9145fe6 Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Fri, 11 Apr 2025 14:50:56 +0200 Subject: [PATCH] Use `adjustWidths` unconditionally for all embedded fonts (issue 19802) Previously we'd only do this for Type1/CFF fonts, see e.g. PR 6736, since the font-program may update the /FontMatrix. However, it seems that we should do this unconditionally to account for fonts with non-default /FontMatrix-entries in the font-dictionary (which seem to be pretty rare). --- src/core/fonts.js | 7 +++---- test/pdfs/.gitignore | 1 + test/pdfs/issue19802.pdf | Bin 0 -> 42376 bytes test/test_manifest.json | 7 +++++++ 4 files changed, 11 insertions(+), 4 deletions(-) create mode 100644 test/pdfs/issue19802.pdf diff --git a/src/core/fonts.js b/src/core/fonts.js index a2e090d61..4a18a7add 100644 --- a/src/core/fonts.js +++ b/src/core/fonts.js @@ -1108,9 +1108,10 @@ class Font { // Repair the TrueType file. It is can be damaged in the point of // view of the sanitizer data = this.checkAndRepair(name, file, properties); - if (this.isOpenType) { - adjustWidths(properties); + adjustWidths(properties); + + if (this.isOpenType) { type = "OpenType"; } break; @@ -2645,8 +2646,6 @@ class Font { cffFile = new Stream(tables["CFF "].data); cff = new CFFFont(cffFile, properties); - adjustWidths(properties); - return this.convert(name, cff, properties); } diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index a06a28688..7c631177a 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -28,6 +28,7 @@ !checkbox-bad-appearance.pdf !issue4684.pdf !issue8092.pdf +!issue19802.pdf !issue5256.pdf !issue5801.pdf !issue5946.pdf diff --git a/test/pdfs/issue19802.pdf b/test/pdfs/issue19802.pdf new file mode 100644 index 0000000000000000000000000000000000000000..b10241ff22d4c0ae5a0b4cebb9520cb5b0a9d2db GIT binary patch literal 42376 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

6c*1W-9=h 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 literal 0 HcmV?d00001 diff --git a/test/test_manifest.json b/test/test_manifest.json index b1950cdff..86c1d819e 100644 --- a/test/test_manifest.json +++ b/test/test_manifest.json @@ -3871,6 +3871,13 @@ "annotations": true, "about": "LinkAnnotation with a relative link, and a /Catalog Base-URI." }, + { + "id": "issue19802", + "file": "pdfs/issue19802.pdf", + "md5": "7a431fb7951ad605f676c80636bbe5d3", + "rounds": 1, + "type": "eq" + }, { "id": "issue14824", "file": "pdfs/issue14824.pdf",