【问题标题】:How to get X-like font name from user-friendly name?如何从用户友好的名称中获取类似 X 的字体名称?
【发布时间】:2013-11-13 06:31:40
【问题描述】:

如果我有像“Courier New”这样的字体名称,如何获得像“--courier--*--...”这样的名称?我对前两个部分感兴趣 - 制造商和家庭。

谢谢。

附:我可以使用标准的 Xlib 函数。我不想依赖任何其他库。

【问题讨论】:

    标签: fonts x11 xlib


    【解决方案1】:

    不幸的是,字体处理在 X11 中是零散的,你想要的是不可能的。

    Xlib 函数XListFonts() 将返回“旧”、固定大小的字体列表,例如“-adobe-courier-bold-o-normal--0-0-100-100-m-iso10464-1” .这就是所有的信息;只是一个名称和一堆参数。

    您正在寻找来自 Freetype 的函数,例如 XftFontOpenName(),您可以在其中提供类似“Courier New-14:bold:slant=italic,oblique”的模式。但这是一种完全不同的字体渲染方式,两种字体系统之间没有任何联系。

    您可以使用XftFontMatch() 查询Xft 库以获取字体列表,也许这将为您提供所需的信息。但是你将不得不使用 freetype 库(我认为这是一个很小的代价)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-04
      • 1970-01-01
      • 2017-10-23
      • 1970-01-01
      • 1970-01-01
      • 2021-11-08
      • 2020-04-25
      • 1970-01-01
      相关资源
      最近更新 更多