You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It seems that cb5ca6b breaks color emoji rendering:
Currently I do this in supertuxkart
for (FT_Face face : normal_ttf)
{
if (!FT_HAS_COLOR(face) ||
(FT_HAS_COLOR(face) && face->num_fixed_sizes == 0))
{
checkFTError(FT_Set_Pixel_Sizes(face, 0, m_shaping_dpi),
"setting DPI");
}
m_hb_fonts.push_back(hb_ft_font_create(face, NULL));
I have to manually do a FT_Select_Size(face, face->num_fixed_sizes - 1) for Noto Color emoji, otherwise the ft_glyph is 'empty' (bits->width / height is zero) (from hb-ft.cc it seems that hb_ft_font_changed is called after hb_ft_font_create)
Or the correct behavior of using hb_ft_font_create is to set pixel / fixed size after that (and manually call hb_ft_font_changed)?
for (FT_Face face : normal_ttf)
{
m_hb_fonts.push_back(hb_ft_font_create(face, NULL));
if (!FT_HAS_COLOR(face) ||
(FT_HAS_COLOR(face) && face->num_fixed_sizes == 0))
{
checkFTError(FT_Set_Pixel_Sizes(face, 0, m_shaping_dpi),
"setting DPI");
}
if (face->num_fixed_sizes != 0)
{
checkFTError(FT_Select_Size(face, face->num_fixed_sizes - 1),
"setting color emoji size");
}
hb_ft_font_changed(m_hb_fonts.back());
The text was updated successfully, but these errors were encountered:
To be honest with you the FT_Face interaction, specially around bitmap fonts, is a mess. I'll try to understand what's going on and get back to you. :(.
Hello
It seems that cb5ca6b breaks color emoji rendering:
Currently I do this in supertuxkart
I have to manually do a
FT_Select_Size(face, face->num_fixed_sizes - 1)
for Noto Color emoji, otherwise the ft_glyph is 'empty' (bits->width / height is zero) (from hb-ft.cc it seems that hb_ft_font_changed is called after hb_ft_font_create)Or the correct behavior of using hb_ft_font_create is to set pixel / fixed size after that (and manually call hb_ft_font_changed)?
The text was updated successfully, but these errors were encountered: