在基于Debian的系统上使用脚本语言(Python或Ruby),我想找到以下任何一种:
(显然,1或2可以从另一个派生出来,所以无论什么更容易都会很棒。)我过去通过运行完成了这个:
fc-list : file charset
...并根据this code from fontconfig解析每行末尾的输出 但在我看来,应该有一个更简单的方法。
(我不完全确定这是这个问题的正确StackExchange网站,但我正在寻找可以通过编程方式使用的答案。)
答案 0 :(得分:6)
我会尝试FreeType 2 language bindings中的任何一个。这是一个使用Font::FreeType
列出字体的Unicode代码点的Perl解决方案:
use Font::FreeType;
Font::FreeType->new->face('DejaVuSans.ttf')->foreach_char(sub {
printf("%04X\n", $_->char_code);
});
答案 1 :(得分:2)
我最近使用TTX/FontTools列出了从unicode代码点到TTF中的glypths的映射。该工具是用Python编写的,因此它匹配帖子中的Python标记。命令
ttx -t cmap foo.ttf
将生成一个XML文件foo.ttx
,该文件描述了该映射,适用于各种环境和编码。参见例如this reference用于描述平台和编码标识符的实际含义。我假设软件包可以用作库和命令行工具,但我没有经验。