@ -1539,7 +1539,6 @@ bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas* atlas)
dst_font - > AddGlyph ( ( ImWchar ) codepoint , q . x0 + off_x , q . y0 + off_y , q . x1 + off_x , q . y1 + off_y , q . s0 , q . t0 , q . s1 , q . t1 , pc . xadvance ) ;
}
}
cfg . DstFont - > BuildLookupTable ( ) ;
}
// Cleanup temporaries
@ -1547,8 +1546,7 @@ bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas* atlas)
ImGui : : MemFree ( buf_ranges ) ;
ImGui : : MemFree ( tmp_array ) ;
// Render into our custom data block
ImFontAtlasBuildRenderDefaultTexData ( atlas ) ;
ImFontAtlasBuildFinish ( atlas ) ;
return true ;
}
@ -1600,7 +1598,7 @@ void ImFontAtlasBuildPackCustomRects(ImFontAtlas* atlas, void* pack_context_opaq
}
}
void ImFontAtlasBuildRenderDefaultTexData ( ImFontAtlas * atlas )
static void ImFontAtlasBuildRenderDefaultTexData ( ImFontAtlas * atlas )
{
ImFontAtlas : : CustomRect & r = atlas - > CustomRects [ 0 ] ;
IM_ASSERT ( r . ID = = FONT_ATLAS_DEFAULT_TEX_DATA_ID ) ;
@ -1650,6 +1648,16 @@ void ImFontAtlasBuildRenderDefaultTexData(ImFontAtlas* atlas)
}
}
void ImFontAtlasBuildFinish ( ImFontAtlas * atlas )
{
// Render into our custom data block
ImFontAtlasBuildRenderDefaultTexData ( atlas ) ;
// Build all fonts lookup tables
for ( int i = 0 ; i < atlas - > Fonts . Size ; i + + )
atlas - > Fonts [ i ] - > BuildLookupTable ( ) ;
}
// Retrieve list of range (2 int per range, values are inclusive)
const ImWchar * ImFontAtlas : : GetGlyphRangesDefault ( )
{