查看 Linux 给定字体中的字形数量

tux*_*ani 6 linux fonts

对于给定的ttfotf字体,如何获取元信息?诸如使用了多少字形、使用了什么工具、我们拥有的字体版本、它的标签等信息?对于windows机器,我见过这个工具。但是对于 Ubuntu/Linux,我找不到任何!

smo*_*nff 5

这是一个您可以使用的简单解决方案。您将需要 Perl 和libfont-ttf-perlDebian 中的软件包(或CPAN 中的Font::TTF):


#!/usr/bin/perl
use strict;
use warnings;
    
use Font::TTF::Font;
    
unless (defined $ARGV[0]) {
    die <<~'EOT';
        perl glyphs_counter.pl infontfile.otf
        Prints glyph count for each input TTF file
        EOT
}

foreach (@ARGV) {
    my $f = Font::TTF::Font->open($_) || die "Unable to open font file $_";
    my $num = $f->{'maxp'}{'numGlyphs'};
    printf "%6d  %s\n", $num, $_;
    $f->release;
}
Run Code Online (Sandbox Code Playgroud)

您唯一需要做的就是将此脚本保存到文件中,通过 Perl 调用它,并将您想要计算字形的字体路径作为参数提供给它:

$ perl glyphs_counter.pl /path/to/the/foo_font.ttf
Run Code Online (Sandbox Code Playgroud)

它似乎适用于 TTF 和 OTF 格式。希望能帮助到你。

2022 编辑:删除了指向我复制此解决方案的原始脚本的链接,因为该链接已损坏,并且我找不到它的存档。