如何找出用于在屏幕上显示某些特定文本的字体的名称?

如何找出用于在屏幕上显示某些特定文本的字体的名称?

我想要一个可以在我的电脑上运行的东西,它可以以某种方式询问 X 并告诉我确切地字体,不是猜测。

答案1

我认为没有通用的解决方案。一旦文本被渲染,系统的任何组件就没有理由保留它从哪种字体渲染的信息。所以你必须以某种方式观察程序何时渲染文本。无论如何,如何获取信息取决于渲染引擎。

大多数程序通过字体配置库进行渲染。如果您启动使用字体配置的程序并将FC_DEBUG环境变量设置为合适的值,它将显示有关正在加载的字体的一些信息,但不会显示正在使用哪种字体来渲染哪些文本。不过,请尝试运行FC_DEBUG=2053 myprogram。请参阅/usr/share/doc/fontconfig/fontconfig-user.txt.gz了解 的含义$FC_DEBUG

传统的 unix 程序使用 X 服务器管理的位图字体来呈现文本。然后,您可以通过监视 X 协议对话并观察 和一些其他消息来查看使用哪种字体来呈现哪些文本OpenFontImageText我没有现成的工具可以推荐。

如果您只对某个特定应用程序感兴趣,那么可能有针对该应用程序的更好的方法。

答案2

这里有一个识别字体的很好的资源:

http://new.myfonts.com/WhatTheFont/

相关内容