首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从TTF-字体中删除所有未使用的字符

从TTF-字体中删除所有未使用的字符
EN

Stack Overflow用户
提问于 2016-02-22 14:11:46
回答 1查看 9.5K关注 0票数 12

如何删除TTF字体文件中的所有字符,而这些字符没有在给定的文本示例中使用?换句话说,我希望从现有字体中创建一个子集,该字体只包含实际显示在文本中的字符。(如果你知道一个能做到这一点的免费工具,而不是字体锻造,那对我也是一样的)。

下面是一个小例子:有一个文本文件,其中包含单词“사슴코끼리당나귀”。那么,如何从字体文件中删除不属于该小文本示例的所有其他字符呢?最后,我想要一个新的TTF文件,该文件只包含使用的字符。实际的文本比这更长,因此在fontforge中手动搜索不是一个选项。

在fontforge中有某些选择选项(主菜单>编辑>选择),在将韩国字符转换为unicode序列后,我尝试了“按野生动物选择”。但还没有运气。

非常感谢你的任何想法!亲切问候

编辑:用例:我正在创建儿童电子书,它们本质上主要由图像组成。然而,文本并不是图片的一部分,而是显示在图片前景中的另一层上。电子书文件(我主要为亚马逊kindle制作)包括一些元数据、图像文件、布局信息,当然还有字体文件。亚马逊Kindle发布程序有非常严格的文件大小限制。为了使一本书在我想要的价格范围内出售,文件大小不能超过3兆字节。这是好的,当我使用西方字体集。但是我的电子书是双语的,对于韩文版,我需要添加一个韩文字体(除了西方字体)。亚洲的字体文件是相对庞大的,因为它们的字母/符号的性质。存储20.000 (在极端情况下可达200.000)字形,每字体重量可达到7-12兆字节。再一次,我的书的文件大小限制是3兆字节,这必须为所有的图片和字体文件(加上布局和元文件)。知道电子书的文本不会被读者更改,所以可以安全地丢弃我的文本中没有使用的字体中的所有字形。不必要地填充用户的读取设备的存储空间是这里的另一个考虑因素。我已经压缩了大量的图像文件,不能再继续压缩了,因为质量开始在一定的压缩速率下受到影响。我希望现在清楚为什么我认为删除字体是一个很好的解决方案。

EN

回答 1

Stack Overflow用户

发布于 2018-02-23 21:17:24

很棒的问题/回答user3725694。为了使脚本生成更加自动化,可以使用以下python代码获取英文可打印字符的Unicode数据:

代码语言:javascript
运行
复制
import string 
s = string.printable
for c in s: print('SelectMore("u%04x")' % ord(c))

它返回:

SelectMore("u0030") SelectMore("u0031") ..。

在手动FontForge活动的自动替代方案上有一个很好的FontForge

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35555816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档