gpt4 book ai didi

pdf - 泰国字符未在 PDF 中正确呈现

转载 作者:行者123 更新时间:2023-12-02 00:43:10 32 4
gpt4 key购买 nike

我的应用程序应该能够输出包含多种受支持语言的用户指南的 PDF 文件。 (我正在使用 pdfkit )

我在寻找适合泰语的字体时遇到了一些麻烦:一些所谓的泰语支持语言(包括来自 Google 的 Noto Thai)会输出方 block 、问号甚至更糟糕的不可读内容。

经过一些研究,我发现一个似乎工作得相当好,直到我们的泰国人注意到字符

ต่ำ

如下图所示,基本上是第一个字符上方的两个元素折叠起来,一个覆盖另一个

enter image description here

我正在使用 Nimbus Sans Thai Family downloaded from myfonts.com顺便说一句,这似乎能够正确呈现这些字符,因为您可能会喜欢尝试在预览输入中复制粘贴 ต่ำ

有什么提示吗?

最佳答案

您的字体在某种程度上是不完整的。它缺少一些通常驻留在 Unicode 专用区 (PUA) 中的字形。
一些应用程序(我知道 Microsoft Word)可以手动解决这个问题,但您的渲染应用程序(和 Adob​​e Acrobat Viewer)不能。
您应该找到一种显示这些字形的字体,或者找到一个可以手动替换现有字形的应用程序。


许多字体,尽管他们声称支持泰语(而且它们确实包含“常规”泰语字形),但可能不完整。

除了规范字形外,格式正确的字体还应包含“私有(private)使用Area”(PUA)子范围,包含非规范形式的字形。那些字形包括:

  1. 调标移动到上部位置以与上部结合使用元音(SARA_ISARA_UE 等),在辅音+声调标记且没有上元音的情况下移到较低的位置;
    KO_KAI + MAI_EK
  2. 声调和上元音稍微向左移动,以便与 PO_PLAFO_FAN 等结合使用(否则会与辅音的上尾重叠) ;
    PO_PLA + SARA_I
  3. 同时,两种效果结合在一起,例如音标同时向左下移动:
    PO_PLA + MAI_EK
  4. YO_YINGTHO_THAN 的特殊字形(没有尾部)与下元音结合使用;
    YO_YING _ SARA_U
  5. 还有几个;

通常,当呈现的应用程序找到上述符号组合时,它会在 PUA 区域中寻找替代字形。如果未找到,它只会回退到默认字形,这会发生在您的情况下。

下面是Arial Unicode和FreeSerif的PUA区两张截图这是不言自明的:FreeSerif 的 PUA 是空的。我认为,您的 Nimbus 字体也会出现同样的问题。

A font with missing PUA

A font with filled PUA


最后的观察。不正确的字体可能以不同的方式不正确。上面我描述了一个更规范的情况,当标准音调位置标记为位置,而非标准位置向下移动(或不存在,这构成不完整字体)。
但是,有些字体的行为方式相反。它们(仅)在较低位置包含声调标记。这就是您似乎观察到的。

关于pdf - 泰国字符未在 PDF 中正确呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45463700/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com