From 2b1a13ba28580ecb1e8b9cbe192ddeff01df14a3 Mon Sep 17 00:00:00 2001 From: Jonas Jenwald Date: Thu, 26 Mar 2015 12:40:37 +0100 Subject: [PATCH] Don't map glyphs to Unicode position 0x0E33, i.e. Thai character SARA AM (bug1046314) *A similar approach as in PR 5705.* Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1046314. According to https://dxr.mozilla.org/mozilla-central/source/gfx/harfbuzz/src/hb-ot-shape-complex-thai.cc#270-365, `0x0E33` is treated as a special case (by the font shaping code in Firefox). Hence it seems reasonable to skip it when adjusting the font mapping. --- src/core/fonts.js | 1 + test/pdfs/.gitignore | 1 + test/pdfs/bug1046314.pdf | Bin 0 -> 39249 bytes test/test_manifest.json | 7 +++++++ 4 files changed, 9 insertions(+) create mode 100644 test/pdfs/bug1046314.pdf diff --git a/src/core/fonts.js b/src/core/fonts.js index ab3262116..a2efa65d4 100644 --- a/src/core/fonts.js +++ b/src/core/fonts.js @@ -2698,6 +2698,7 @@ var Font = (function FontClosure() { fontCharCode === 0x7F || // Control char fontCharCode === 0xAD || // Soft hyphen fontCharCode === 0xA0 || // Non breaking space + fontCharCode === 0x0E33 || // Thai character SARA AM fontCharCode === 0x25CC || // Dotted circle (combining mark) (fontCharCode >= 0x80 && fontCharCode <= 0x9F) || // Control chars // Prevent drawing characters in the specials unicode block. diff --git a/test/pdfs/.gitignore b/test/pdfs/.gitignore index 6d4c7363e..a744db6ca 100644 --- a/test/pdfs/.gitignore +++ b/test/pdfs/.gitignore @@ -86,6 +86,7 @@ !bug866395.pdf !bug1027533.pdf !bug1028735.pdf +!bug1046314.pdf !bug1065245.pdf !basicapi.pdf !mixedfonts.pdf diff --git a/test/pdfs/bug1046314.pdf b/test/pdfs/bug1046314.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8f69fc84791abd5255ac45a78874016bc7a7fd91 GIT binary patch literal 39249 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 z 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%0DCZr7es-BYf- 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 LOuW2L^wj