gpt4 book ai didi

ios - 将阿拉伯语字体移植到 iOS 系统

转载 作者:行者123 更新时间:2023-11-29 01:46:26 31 4
gpt4 key购买 nike

我只是希望使用自定义字体让我的 iPad 看起来更漂亮。

iOS8 设备的默认阿拉伯字体是 GeezaPro。并且它是 .ttc 格式。

我正在尝试用我的自定义字体替换它。

我使用 DOSBOX 将系统字体 ttc 文件分解为 ttf 文件,使它们可编辑。

然后我使用 FontLab Studio 将系统字体字形替换为我的自定义字体字形。

我只是从自定义字体中复制字形并将其粘贴到系统字体中(使用 FontLab 提供的特殊粘贴选项)。

然后我再次使用DOSBOX将这些ttf文件加入到ttc文件中。

这适用于我使用的自定义英文字体。但是将它与阿拉伯字体一起使用会出现一些问题。

文本字母在 iOS 应用程序和任何地方都显示为分隔。(正如您已经知道的那样,阿拉伯语使用连接字母,有时根据上下文使用分隔字母。如果字母是第一个字母,它将使用特定的字形,如果字母在中间或最后使用不同的字形,情况也是如此。而在英语中,无论如何,所有字母始终保持分开。手写脚本除外。)

知道如何解决吗?

一些链接:

tutorial I followed to port my fonts

the arabic font I am trying to accomplish (it's free and legit)

P.S:有些人可能会说使用 Bytafont 字体库,但我想使用这种特定的字体。图书馆中的阿拉伯字体也有限(仅提供 20 种字体)。

最佳答案

字体是在嵌入式硬件解释器和字体引擎上运行的复杂程序(与游戏 ROM 在游戏硬件或模拟器中运行的方式相同),不仅包含每个字母的图片,还包含有关如何操作的所有说明根据告诉它要处理的输入序列来定位、组合和替换这些字母。

对于几乎所有字体,仅复制字形轮廓是不够的,您还需要确保:

  1. 保留原始字体的字形顺序,
  2. GPOS table被复制(这决定了标记定位、字距调整等),并且
  3. GSUB table被复制(它处理字形替换,没有它你甚至不能写阿拉伯语。例如,你需要 ـب、ـبـ、بـ 或 ب,具体取决于相同“字母”bā’ 的上下文)

所以你通常想要解压 TTC(从 OpenType 1.7 开始可以是 truetype 或 postscript/type2,所以这是 future 要记住的事情),然后执行替换字形(保留顺序),以及替换 GPOS 和 GSUB 表(使用 FontForge 或 TTX ),然后将其打包回 TTC

关于ios - 将阿拉伯语字体移植到 iOS 系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31882207/

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