|
|
@ -1439,11 +1439,14 @@ void ImFontAtlas::GetTexDataAsRGBA32(unsigned char** out_pixels, int* out_wid |
|
|
|
{ |
|
|
|
unsigned char* pixels; |
|
|
|
GetTexDataAsAlpha8(&pixels, NULL, NULL); |
|
|
|
TexPixelsRGBA32 = (unsigned int*)ImGui::MemAlloc((size_t)(TexWidth * TexHeight * 4)); |
|
|
|
const unsigned char* src = pixels; |
|
|
|
unsigned int* dst = TexPixelsRGBA32; |
|
|
|
for (int n = TexWidth * TexHeight; n > 0; n--) |
|
|
|
*dst++ = IM_COL32(255, 255, 255, (unsigned int)(*src++)); |
|
|
|
if (pixels) |
|
|
|
{ |
|
|
|
TexPixelsRGBA32 = (unsigned int*)ImGui::MemAlloc((size_t)(TexWidth * TexHeight * 4)); |
|
|
|
const unsigned char* src = pixels; |
|
|
|
unsigned int* dst = TexPixelsRGBA32; |
|
|
|
for (int n = TexWidth * TexHeight; n > 0; n--) |
|
|
|
*dst++ = IM_COL32(255, 255, 255, (unsigned int)(*src++)); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
*out_pixels = (unsigned char*)TexPixelsRGBA32; |
|
|
@ -1683,6 +1686,7 @@ bool ImFontAtlasBuildWithStbTruetype(ImFontAtlas* atlas) |
|
|
|
IM_ASSERT(font_offset >= 0); |
|
|
|
if (!stbtt_InitFont(&tmp.FontInfo, (unsigned char*)cfg.FontData, font_offset)) |
|
|
|
{ |
|
|
|
atlas->TexWidth = atlas->TexHeight = 0; // Reset output on failure
|
|
|
|
ImGui::MemFree(tmp_array); |
|
|
|
return false; |
|
|
|
} |
|
|
|