我正在尝试呈现默认已经着色的表情符号文件。我正在使用'Segoe UI Emoji'
SHA-256: 9e5a8c7e6c1e9096918a490798f4177107f0522870c8ad0227d5f02be407e0ed
。问题是FT_HAS_COLOR()
始终返回false,因此我无法使用FT_LOAD_COLOR
将位图加载到纹理中。我在Universal Character Map中打开了文件并看到了这个 -
。以下是光栅化字形的代码片段。FT_Int32 flags = FT_LOAD_FORCE_AUTOHINT | ( m_bAntiAliasing ? FT_LOAD_TARGET_NORMAL : FT_LOAD_TARGET_MONO );
if ( FT_HAS_COLOR( m_face ) )
flags |= FT_LOAD_COLOR;
else
flags |= FT_LOAD_RENDER;
if ( FT_Load_Char( m_face, glyphit->first, flags ) )
continue;
以下是结果
我需要帮助,已经卡在这个问题上很长时间,并尝试了不同版本的字体/其他字体。
注意:我看到了这篇文章,但似乎没有得到答案。
谢谢。
FT_Select_Size(face, 0);
设置其中一个公布的尺寸。例如,第二个参数是可用尺寸在数组available_sizes
中列出的索引。 - PeterT