从基于Debian的系统上的脚本语言(例如Python或Ruby),我想找到以下其中一种:
>特定字体具有以下字形的所有Unicode代码点
>所有具有特定Unicode代码点字形的字体
(显然,1或2可以从另一个派生,所以更简单的方法就可以了.)我过去通过运行以下操作来完成此操作:
fc-list : file charset
…并基于this code from fontconfig解析每行末尾的输出
但是在我看来,应该有一种更简单的方法来执行此操作.
(我不能完全确定这是此问题的正确StackExchange网站,但我正在寻找可以以编程方式使用的答案.)
解决方法:
我可以尝试任何FreeType 2 language bindings.这是一个Perl解决方案,用于使用Font :: FreeType列出字体的Unicode代码点:
use Font::FreeType;
Font::FreeType->new->face('DejaVuSans.ttf')->foreach_char(sub {
printf("%04X\n", $_->char_code);
});