C++ 如何获取C+中Freetype2的true type字体支持的代码点列表+;

C++ 如何获取C+中Freetype2的true type字体支持的代码点列表+;,c++,truetype,freetype2,C++,Truetype,Freetype2,如何使用Freetype2库获得true type字体支持的字形或代码点列表?Freetype提供了两个函数来完成此任务。第一个是 此函数将返回字体支持的第一个字符的代码。它还将agindex指向的变量设置为字形在字体中的索引。请注意,如果设置为0,则表示字体中没有其他字符 您需要的下一个功能是。这将允许您通过返回其值来获取字体中的下一个可用字符。请注意,与FT_Get_First_Char一样,当它返回最终glyph时,这也会将agindex设置为零 现在来看一个工作示例: // Lo

如何使用Freetype2库获得true type字体支持的字形或代码点列表?

Freetype提供了两个函数来完成此任务。第一个是

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

您需要的下一个功能是。这将允许您通过返回其值来获取字体中的下一个可用字符。请注意,与FT_Get_First_Char一样,当它返回最终glyph时,这也会将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.
//请先加载freetype库。
面部;
//用任何你觉得最好的方法来装点你的脸。
金融时报指数;
FT_ULong c=FT_Get_First_Char(面和索引);
while(索引){

Freetype提供了两个函数来完成这个任务。第一个是

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

您需要的下一个函数是。这将允许您通过返回其值来获取字体中的下一个可用字符。请注意,与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.
//请先加载freetype库。
面部;
//用任何你觉得最好的方法来装点你的脸。
金融时报指数;
FT_ULong c=FT_Get_First_Char(面和索引);
while(索引){

std::虽然在我的代码中我使用了FT_Load_Glyph(ftFace,glyphIndex,FT_Load_DEFAULT)和FT_Render_Glyph(ftFace->Glyph,FT_Render_MODE_NORMAL),但它似乎与您键入的不同,它确实可以工作,所以我想知道。在我的代码中我使用FT_Load_Glyph(ftFace,glyphIndex,FT_Load_DEFAULT)和FT_Render_Glyph(ftFace->glyph,FT_RENDER_MODE_NORMAL),它似乎与您键入的内容不同,但它确实可以工作,所以我想知道。