检查是否呈现字形 "correctly"
check if glyph is rendered "correctly"
我正在编写一个 tcl/tk 应用程序,我想在其中使用超赞的字体图标。
原则上,这很好用:只需显示一些 string/label 和正确的 unicode 字符,如果安装了正确的字体,它就会呈现)
现在,在我的开发机器上,我像普通机器一样安装了 font-awesome。
我不能指望在部署机器上。
所以我想知道系统是否可以呈现给定的字符,或者它是否只使用 glyph-not-found 占位符。在后一种情况下,我会退回到一些不太好的表示...
(我不希望我的用户必须回答像 "does this string look correct?" 这样的问题)
例如符号“”(
) 在我的应用程序中显示为 Whosebug 图标。在我的浏览器中,它呈现为 glyph-not-found.
那么,有没有办法以编程方式找出(使用的)系统字体是否提供给定字符的字形?
很遗憾,没有;它完全缺少功能。您可以获得的最接近的是获取字符的实际字体信息——我认为需要 8.6——或者测量它的宽度,但这并没有真正帮助:
% font actual TkFixedFont
-family Monaco -size 11 -weight normal -slant roman -underline 0 -overstrike 0
% font actual TkFixedFont \uf16c
-family Monaco -size 11 -weight normal -slant roman -underline 0 -overstrike 0
% font measure TkFixedFont \uf16c
14
(该字符在此系统上使用该字体呈现为未找到的字形符号。)
我正在编写一个 tcl/tk 应用程序,我想在其中使用超赞的字体图标。
原则上,这很好用:只需显示一些 string/label 和正确的 unicode 字符,如果安装了正确的字体,它就会呈现)
现在,在我的开发机器上,我像普通机器一样安装了 font-awesome。 我不能指望在部署机器上。
所以我想知道系统是否可以呈现给定的字符,或者它是否只使用 glyph-not-found 占位符。在后一种情况下,我会退回到一些不太好的表示...
(我不希望我的用户必须回答像 "does this string look correct?" 这样的问题)
例如符号“”(
) 在我的应用程序中显示为 Whosebug 图标。在我的浏览器中,它呈现为 glyph-not-found.
那么,有没有办法以编程方式找出(使用的)系统字体是否提供给定字符的字形?
很遗憾,没有;它完全缺少功能。您可以获得的最接近的是获取字符的实际字体信息——我认为需要 8.6——或者测量它的宽度,但这并没有真正帮助:
% font actual TkFixedFont
-family Monaco -size 11 -weight normal -slant roman -underline 0 -overstrike 0
% font actual TkFixedFont \uf16c
-family Monaco -size 11 -weight normal -slant roman -underline 0 -overstrike 0
% font measure TkFixedFont \uf16c
14
(该字符在此系统上使用该字体呈现为未找到的字形符号。)