Answers:
fc-query
可以显示支持的unicode字符集。我不知道其他代码页。
例如,fc-query /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf
在我的Debian上显示如下:
…
charset:
0000: 00000000 ffffffff ffffffff 7fffffff 00000000 ffffffff ffffffff ffffffff
0001: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0002: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 008873ff
…
它显示了受支持的字符范围,尽管它不属于它属于哪个块(您必须知道哪个范围属于哪个块)。
例如,对应于U + 0060-U + 007F的第四列0000具有十六进制值7fffffff
。它的值为0111 1111 1111 1111 1111 1111 1111 1111
,其中最右边的是U + 0060,最左边的是U + 007F。这表示此字体不支持U + 007F。
您可能需要编写一个脚本,对.NET提供的信息进行按位操作fc-query
。
P / S:我最喜欢的unicode信息访问网站是FileFormat.Info
我建议FontForge。在Ubuntu的软件包管理器中,它的格式为fontforge
。
注意任何发现此..
fc-query在字符集输出上不是100%可靠的。
例如,dafont.com上的Yogafont会显示一个空字符集,尽管其中确实包含字符。
$ fc-query yogafont.TTF
Pattern has 20 elts (size 32)
family: "Yogafont"(s)
familylang: "en"(s)
style: "Regular"(s)
stylelang: "en"(s)
fullname: "Yogafont"(s)
fullnamelang: "en"(s)
slant: 0(i)(s)
weight: 80(i)(s)
width: 100(i)(s)
spacing: 100(i)(s)
foundry: "unknown"(s)
file: "yogafont.TTF"(s)
index: 0(i)(s)
outline: FcTrue(s)
scalable: FcTrue(s)
charset:
(s)
lang: (s)
fontversion: 0(i)(s)
fontformat: "TrueType"(s)
decorative: FcFalse(s)
其中带有绘图的其他字体(例如WW1)显示的字符集有限。
$ fc-query WW1-A___.TTF
Pattern has 19 elts (size 32)
family: "WW1 A"(s)
familylang: "en"(s)
style: "Regular"(s)
stylelang: "en"(s)
fullname: "WW1 A"(s)
fullnamelang: "en"(s)
slant: 0(i)(s)
weight: 80(i)(s)
width: 100(i)(s)
foundry: "unknown"(s)
file: "WW1-A___.TTF"(s)
index: 0(i)(s)
outline: FcTrue(s)
scalable: FcTrue(s)
charset:
0000: 00000000 00000001 00000000 0001fffe 00000000 00000000 00000000 00000000
(s)
lang: (s)
fontversion: 65536(i)(s)
fontformat: "TrueType"(s)
decorative: FcFalse(s)