parent
5f2cfd4854
commit
f2af2fbe76
12
extern/imgui_patched/imgui_draw.cpp
vendored
12
extern/imgui_patched/imgui_draw.cpp
vendored
|
@ -2224,10 +2224,22 @@ ImFont* ImFontAtlas::AddFontFromMemoryTTF(void* ttf_data, int ttf_size, float si
|
||||||
|
|
||||||
ImFont* ImFontAtlas::AddFontFromMemoryCompressedTTF(const void* compressed_ttf_data, int compressed_ttf_size, float size_pixels, const ImFontConfig* font_cfg_template, const ImWchar* glyph_ranges)
|
ImFont* ImFontAtlas::AddFontFromMemoryCompressedTTF(const void* compressed_ttf_data, int compressed_ttf_size, float size_pixels, const ImFontConfig* font_cfg_template, const ImWchar* glyph_ranges)
|
||||||
{
|
{
|
||||||
|
// workaround for big-endian
|
||||||
|
#ifdef TA_BIG_ENDIAN
|
||||||
|
unsigned char* beData=(unsigned char*)IM_ALLOC(compressed_ttf_size);
|
||||||
|
for (int i=0; i<compressed_ttf_size; i++) {
|
||||||
|
beData[i]=compressed_ttf_data[i^3];
|
||||||
|
}
|
||||||
|
compressed_ttf_data=beData;
|
||||||
|
#endif
|
||||||
const unsigned int buf_decompressed_size = stb_decompress_length((const unsigned char*)compressed_ttf_data);
|
const unsigned int buf_decompressed_size = stb_decompress_length((const unsigned char*)compressed_ttf_data);
|
||||||
unsigned char* buf_decompressed_data = (unsigned char*)IM_ALLOC(buf_decompressed_size);
|
unsigned char* buf_decompressed_data = (unsigned char*)IM_ALLOC(buf_decompressed_size);
|
||||||
stb_decompress(buf_decompressed_data, (const unsigned char*)compressed_ttf_data, (unsigned int)compressed_ttf_size);
|
stb_decompress(buf_decompressed_data, (const unsigned char*)compressed_ttf_data, (unsigned int)compressed_ttf_size);
|
||||||
|
|
||||||
|
#ifdef TA_BIG_ENDIAN
|
||||||
|
IM_FREE(beData);
|
||||||
|
#endif
|
||||||
|
|
||||||
ImFontConfig font_cfg = font_cfg_template ? *font_cfg_template : ImFontConfig();
|
ImFontConfig font_cfg = font_cfg_template ? *font_cfg_template : ImFontConfig();
|
||||||
IM_ASSERT(font_cfg.FontData == NULL);
|
IM_ASSERT(font_cfg.FontData == NULL);
|
||||||
font_cfg.FontDataOwnedByAtlas = true;
|
font_cfg.FontDataOwnedByAtlas = true;
|
||||||
|
|
Loading…
Reference in a new issue