diff --git a/src/text.c b/src/text.c index eaf450b0..e2629b09 100644 --- a/src/text.c +++ b/src/text.c @@ -66,8 +66,8 @@ //---------------------------------------------------------------------------------- // Defines and Macros //---------------------------------------------------------------------------------- -#define MAX_FORMATTEXT_LENGTH 64 -#define MAX_SUBTEXT_LENGTH 64 +#define MAX_FORMATTEXT_LENGTH 256 +#define MAX_SUBTEXT_LENGTH 256 //---------------------------------------------------------------------------------- // Types and Structures Definition @@ -318,21 +318,20 @@ SpriteFont LoadSpriteFont(const char *fileName) SpriteFont LoadSpriteFontEx(const char *fileName, int fontSize, int charsCount, int *fontChars) { SpriteFont spriteFont = { 0 }; + int totalChars = 95; // Default charset [32..126] #if defined(SUPPORT_FILEFORMAT_TTF) if (IsFileExtension(fileName, ".ttf")) { - if ((fontChars == NULL) || (charsCount == 0)) + if (charsCount != 0) totalChars = charsCount; + + if (fontChars == NULL) { - int totalChars = 95; // Default charset [32..126] - - int *defaultFontChars = (int *)malloc(totalChars*sizeof(int)); - - for (int i = 0; i < totalChars; i++) defaultFontChars[i] = i + 32; // Default first character: SPACE[32] - - spriteFont = LoadTTF(fileName, fontSize, totalChars, defaultFontChars); + fontChars = (int *)malloc(totalChars*sizeof(int)); + for (int i = 0; i < totalChars; i++) fontChars[i] = i + 32; // Default first character: SPACE[32] } - else spriteFont = LoadTTF(fileName, fontSize, charsCount, fontChars); + + spriteFont = LoadTTF(fileName, fontSize, totalChars, fontChars); } #endif diff --git a/src/textures.c b/src/textures.c index 34d6182c..2772e246 100644 --- a/src/textures.c +++ b/src/textures.c @@ -1377,13 +1377,12 @@ Image ImageTextEx(SpriteFont font, const char *text, float fontSize, int spacing Vector2 imSize = MeasureTextEx(font, text, font.baseSize, spacing); - TraceLog(LOG_WARNING, "Text Image size: %f, %f", imSize.x, imSize.y); + TraceLog(LOG_DEBUG, "Text Image size: %f, %f", imSize.x, imSize.y); // NOTE: glGetTexImage() not available in OpenGL ES Image imFont = GetTextureData(font.texture); - - ImageFormat(&imFont, UNCOMPRESSED_R8G8B8A8); // Convert to 32 bit for color tint - ImageColorTint(&imFont, tint); // Apply color tint to font + + ImageColorTint(&imFont, tint); // Apply color tint to font // Create image to store text Image imText = GenImageColor((int)imSize.x, (int)imSize.y, BLANK); @@ -1405,7 +1404,7 @@ Image ImageTextEx(SpriteFont font, const char *text, float fontSize, int spacing if (fontSize > imSize.y) { float scaleFactor = fontSize/imSize.y; - TraceLog(LOG_INFO, "Scalefactor: %f", scaleFactor); + TraceLog(LOG_INFO, "Image text scaled by factor: %f", scaleFactor); // Using nearest-neighbor scaling algorithm for default font if (font.texture.id == GetDefaultFont().texture.id) ImageResizeNN(&imText, (int)(imSize.x*scaleFactor), (int)(imSize.y*scaleFactor));