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