Fonts 如何一次将多个字形从一个字体文件(otf)传输到另一个?

Fonts 如何一次将多个字形从一个字体文件(otf)传输到另一个?,fonts,arabic,glyph,opentype,latin,Fonts,Arabic,Glyph,Opentype,Latin,基本上,我有一些字体文件,目前有拉丁字母字形,我想从不同的字体文件导入阿拉伯字符到这些字体文件。是的,阿拉伯文字形来自免费的个人使用字体,以防有人担心,而拉丁文字符来自我自己的知识产权。我只是想找到一种快速导入所有阿拉伯字形的方法,而不需要一次只导入一个。有没有已知的快速简便的方法?谢谢。最好的解决方案是找出如何在操作系统中启用回退字体。任何能够阅读现代TTF或OTF字体的操作系统都应该支持这一点。它可以让你保持原来的字体,这意味着更少的工作,更少的测试和更容易的维护 FontForge(免费工

基本上,我有一些字体文件,目前有拉丁字母字形,我想从不同的字体文件导入阿拉伯字符到这些字体文件。是的,阿拉伯文字形来自免费的个人使用字体,以防有人担心,而拉丁文字符来自我自己的知识产权。我只是想找到一种快速导入所有阿拉伯字形的方法,而不需要一次只导入一个。有没有已知的快速简便的方法?谢谢。

最好的解决方案是找出如何在操作系统中启用回退字体。任何能够阅读现代TTF或OTF字体的操作系统都应该支持这一点。它可以让你保持原来的字体,这意味着更少的工作,更少的测试和更容易的维护

FontForge(免费工具)可以合并字体:。但我怀疑这可能不会产生最佳结果。阿拉伯文字体往往包含许多连字和其他复杂的功能,我不认为这些功能所需的所有内部字体表都会被合并。你必须进行广泛的测试,以确保阿拉伯语的结果看起来仍然不错

在FontForge中打开两种字体,从自己的字体中选择全部拉丁字形,然后将它们复制粘贴到阿拉伯语字体中,可能会更幸运。然后将结果保存为合并字体。这意味着,任何用于阿拉伯语特征的特殊表格都将被保留,而用于拉丁语字形(如基于类的紧排)的表格将丢失。两两紧排将被保留。作为《拉丁字体》的作者,你会对它的成功有一些想法


还有其他字体功能不一定适用于这两种字体,例如升序/降序指标、蓝色值等。最终可能会导致较小尺寸的拉丁语呈现效果不佳,甚至会切掉字符的顶部和底部。这些都可以修复,但需要时间和仔细的测试。制作精良的字体是一台经过高度调整的机器,正确地合并两种字体是一个耗时的过程。

。。。为什么?我想不出任何实际的理由来这样做:两种字体都要用。现在已经不是20世纪70年代了,几乎任何你正在思考的应用程序都可以通过学习来使用字体堆栈。或者,换一种说法:我很确定这是一个问题,你需要解释你最初的问题是什么,“复制字形”是你提出的解决方案,你现在正在问这个问题。让我们来解决原来的问题。虽然我很想这样做,但它被用作一种显示字体,它不知道如何在某些字体中显示某些字符,也不知道如何在另一种字体的主字体中显示未知字符,我不知道如何告诉操作系统去寻找其他字体,特别是那些在主显示字体中不存在的字符。如果你知道怎么做,那就太棒了。否则,这似乎是最简单、最有用的解决方案。将整个字体的逻辑移到另一种字体中并不简单。你不能只是“复制字母”,然后突然间事情就开始了,你需要复制所有关于定位、替换等的元数据,这对于我们在80年代发明字体回退的东西来说是一个疯狂的工作量。因此:“这被用作一种显示字体,它不知道在某些字体中显示某些字符”是您面临的真正问题:请关闭此问题并发布一个新问题,询问如何在您使用的GUI框架中启用字体回退。对于那些准备冒Pomax警告的风险的人,有。特别是,如果这是您的目标,则提供了两个以编程方式执行此操作的脚本。合并从来都不是解决方案。字体是为GSUB/GPOS/etc设计的,以使其在该字体中有意义,因此这里唯一明智的做法是“只需使用字体回退,现在是2017年,您使用的一切都可以做到这一点”。