瀏覽代碼

ADDED: UnloadFontData()

pull/1444/head
raysan5 4 年之前
父節點
當前提交
14c1ee2681
共有 2 個文件被更改,包括 11 次插入3 次删除
  1. +2
    -0
      src/raylib.h
  2. +9
    -3
      src/text.c

+ 2
- 0
src/raylib.h 查看文件

@ -1247,8 +1247,10 @@ RLAPI Font LoadFontFromImage(Image image, Color key, int firstChar);
RLAPI Font LoadFontFromMemory(const char *fileType, const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int charsCount); // Load font from memory buffer, fileType refers to extension: i.e. "ttf"
RLAPI CharInfo *LoadFontData(const unsigned char *fileData, int dataSize, int fontSize, int *fontChars, int charsCount, int type); // Load font data for further use
RLAPI Image GenImageFontAtlas(const CharInfo *chars, Rectangle **recs, int charsCount, int fontSize, int padding, int packMethod); // Generate image font atlas using chars info
RLAPI void UnloadFontData(CharInfo *chars, int charsCount); // Unload font chars info data (RAM)
RLAPI void UnloadFont(Font font); // Unload Font from GPU memory (VRAM)
// Text drawing functions
RLAPI void DrawFPS(int posX, int posY); // Shows current FPS
RLAPI void DrawText(const char *text, int posX, int posY, int fontSize, Color color); // Draw text (using default font)

+ 9
- 3
src/text.c 查看文件

@ -788,16 +788,22 @@ Image GenImageFontAtlas(const CharInfo *chars, Rectangle **charRecs, int charsCo
}
#endif
// Unload font chars info data (RAM)
void UnloadFontData(CharInfo *chars, int charsCount)
{
for (int i = 0; i < charsCount; i++) UnloadImage(chars[i].image);
RL_FREE(chars);
}
// Unload Font from GPU memory (VRAM)
void UnloadFont(Font font)
{
// NOTE: Make sure font is not default font (fallback)
if (font.texture.id != GetFontDefault().texture.id)
{
for (int i = 0; i < font.charsCount; i++) UnloadImage(font.chars[i].image);
UnloadFontData(font.chars, font.charsCount);
UnloadTexture(font.texture);
RL_FREE(font.chars);
RL_FREE(font.recs);
TRACELOGD("FONT: Unloaded font data from RAM and VRAM");

Loading…
取消
儲存