【问题标题】:How to create PangoFont object from TTF font file?如何从 TTF 字体文件创建 PangoFont 对象?
【发布时间】:2017-05-02 10:17:30
【问题描述】:

我一直在阅读 pango 的 gnome API,但找不到从我拥有的 ttf 字体文件中获取 PangoFont 的简单方法。

TTF 文件中获取PangoFont 对象的顺序调用是什么?

【问题讨论】:

    标签: fonts freetype pango


    【解决方案1】:

    (几个小时前的@Griffin)要从TTF 文件中添加字体,您首先需要确保它首先添加到FcConfig,然后通过其pango_font_description_from_string 检索其PangoFont,如下所示:

    //first add to FcConfig
    std::string FontPath = "/path/to/font.ttf"
    const FcChar8 * fontFile = (const FcChar8 *)FontPath.c_str();
    FcBool fontAddStatus = FcConfigAppFontAddFile(FcConfigGetCurrent(), fontFile);
    
    //then retrieve it via its fontDescriptor with pango
    PangoFontDescription * desc = pango_font_description_from_string("SOME-FONT-FAMILY SOME-STYLE");
    PangoFontMap* pfm = pango_cairo_font_map_get_default();
    PangoFont* font =  pango_font_map_load_font(pfm, context, desc);
    

    【讨论】:

      猜你喜欢
      • 2012-09-02
      • 1970-01-01
      • 2021-04-22
      • 2018-12-13
      • 2015-12-23
      • 1970-01-01
      • 2015-08-17
      • 2017-07-14
      • 2015-01-30
      相关资源
      最近更新 更多