gpt4 book ai didi

c++ - 如何在 C++ 中使用 Freetype2 获取 True Type 字体支持的代码点列表

转载 作者:行者123 更新时间:2023-11-28 05:03:14 25 4
gpt4 key购买 nike

如何使用 Freetype2 库获取 True Type 字体支持的字形或代码点列表?

最佳答案

Freetype 提供了两个函数来完成这个任务。第一个是 FT_Get_First_Char(FT_Face face, FT_UInt * agindex) .

此函数将返回字体支持的第一个字符的代码。它还会将 agindex 指向的变量设置为字形在字体中的索引。请注意,如果将其设置为 0,则表示字体中没有其他字符。

您需要的下一个函数是 FT_Get_Next_Char(FT_Face face, FT_ULong char_code, FT_UInt * agindex) .这将让您通过返回其值来获取字体中的下一个可用字符。请注意,与 FT_Get_First_Char 一样,这也会在返回最终字形时将 agindex 设置为零。

现在来看一个工作示例:

    // Load freetype library before hand.
FT_Face face;

// Load the face by whatever means you feel are best.

FT_UInt index;
FT_ULong c = FT_Get_First_Char(face, &index);

while (index) {
std::cout << "Supported Code: " << c << std::endl;

// Load character glyph.
FT_Load_Char(face, c, FT_LOAD_RENDER);

// You can now access the glyph with:
// face->glyph;

// Now grab the next charecter.
c = FT_Get_Next_Char(face, c, &index);
}

// Make sure to clean up your mess.

关于c++ - 如何在 C++ 中使用 Freetype2 获取 True Type 字体支持的代码点列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45427496/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com