微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何检查哪些字体包含特定字符与perl?

参见英文答案 > Finding out what characters a font supports6
> How can one find the Unicode codepoints that a font has glyphs for,on a Debian-based system?2
这已经是问题:

> How to determine which fonts contain a specific character?
> Checking if certain characters are supported by a font

我有很多不同的字体.其中许多是“ascii only”,我需要检查什么字体包含几个重音字符. (latin – unicode codepoints – 文本编码为utf8)如:(áäčďéěíĺľňóôöőŕřšťúůüűýž)

主要有:

> TrueType字体(扩展名为.ttf)
> TrueType集合(扩展名.ttc)
> OpenType字体(.otf)

用perl做什么常用(正确的)方法? (它是唯一的语言,我知道一点,上面的问题是C).在开始安装所有包含“font”的CPAN模块之前询问:).

我在OS X(如果这是重要的,可以安装任何macports包 – 如果它有帮助).

解决方法

对于.ttf文件,可以使用 Font::TTF及相关模块:
use Font::TTF::Font;
my $font = Font::TTF::Font->open( "C:/Windows/Fonts/ariali.ttf" );
my @supported_codepoints = sort { $a <=> $b } $font->{cmap}->reverse;

我正在走出深度,但在Font :: TTF发行版中还有一个Font :: TTF :: Ttc模块,您可以在这里分析一下,看看是否可以提取有关支持代码点的更多信息.

(Font :: TTF的建议来自here)

原文地址:https://www.jb51.cc/Perl/171614.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐