////////////////////////////////////////////////////////////////////////////////// // // // StyleAsCode exporter v1.2 - Style data exported as a values array // // // // USAGE: On init call: GuiLoadStyleTerminal(); // // // // more info and bugs-report: github.com/raysan5/raygui // // feedback and support: ray[at]raylibtech.com // // // // Copyright (c) 2020-2023 raylib technologies (@raylibtech) // // // ////////////////////////////////////////////////////////////////////////////////// #define TERMINAL_STYLE_PROPS_COUNT 16 // Custom style name: terminal static const GuiStyleProp terminalStyleProps[TERMINAL_STYLE_PROPS_COUNT] = { { 0, 0, 0x1c8d00ff }, // DEFAULT_BORDER_COLOR_NORMAL { 0, 1, 0x161313ff }, // DEFAULT_BASE_COLOR_NORMAL { 0, 2, 0x38f620ff }, // DEFAULT_TEXT_COLOR_NORMAL { 0, 3, 0xc3fbc6ff }, // DEFAULT_BORDER_COLOR_FOCUSED { 0, 4, 0x43bf2eff }, // DEFAULT_BASE_COLOR_FOCUSED { 0, 5, 0xdcfadcff }, // DEFAULT_TEXT_COLOR_FOCUSED { 0, 6, 0x1f5b19ff }, // DEFAULT_BORDER_COLOR_PRESSED { 0, 7, 0x43ff28ff }, // DEFAULT_BASE_COLOR_PRESSED { 0, 8, 0x1e6f15ff }, // DEFAULT_TEXT_COLOR_PRESSED { 0, 9, 0x223b22ff }, // DEFAULT_BORDER_COLOR_DISABLED { 0, 10, 0x182c18ff }, // DEFAULT_BASE_COLOR_DISABLED { 0, 11, 0x244125ff }, // DEFAULT_TEXT_COLOR_DISABLED { 0, 16, 0x00000010 }, // DEFAULT_TEXT_SIZE { 0, 17, 0x00000000 }, // DEFAULT_TEXT_SPACING { 0, 18, 0xe6fce3ff }, // DEFAULT_LINE_COLOR { 0, 19, 0x0c1505ff }, // DEFAULT_BACKGROUND_COLOR }; // WARNING: This style uses a custom font: (size: 16, spacing: 0) #define TERMINAL_COMPRESSED_DATA_SIZE 964 // Font image pixels data compressed (DEFLATE) // NOTE: Original pixel data simplified to GRAYSCALE static unsigned char terminalFontData[TERMINAL_COMPRESSED_DATA_SIZE] = { 0xed, 0xdd, 0x41, 0xb6, 0x9b, 0x30, 0x0c, 0x05, 0x50, 0xf6, 0xbf, 0x69, 0x75, 0xd0, 0xd3, 0x41, 0x7b, 0x9a, 0x0f, 0x92, 0x65, 0xc7, 0xc0, 0xed, 0x9d, 0xa5, 0x09, 0x9f, 0xf0, 0x02, 0x38, 0xb6, 0xec, 0xc4, 0x01, 0x00, 0xf0, 0x8f, 0xf8, 0xef, 0x23, 0xf1, 0xf1, 0x99, 0x71, 0x79, 0x3b, 0xbf, 0x1f, 0x8d, 0x8f, 0x7f, 0xe5, 0xcf, 0xbf, 0x2b, 0x5b, 0xba, 0xfe, 0xac, 0x48, 0xed, 0xdd, 0xd8, 0x5e, 0xd5, 0xb6, 0x93, 0x7d, 0xf6, 0xcf, 0xfb, 0x13, 0x1b, 0xe4, 0x7f, 0xfe, 0x6e, 0x33, 0xc7, 0x33, 0xca, 0xe9, 0xe5, 0x3f, 0x9d, 0x33, 0xcf, 0xa1, 0xec, 0x3e, 0xd6, 0x8e, 0xc9, 0x1e, 0xf9, 0x67, 0xff, 0x46, 0x6e, 0xbf, 0x63, 0x68, 0xcf, 0x6b, 0xe7, 0xf4, 0xd8, 0xde, 0xdd, 0x39, 0xff, 0xe3, 0xe3, 0x95, 0xbc, 0x7a, 0x1c, 0x57, 0xe5, 0x3f, 0xfe, 0x2e, 0xe5, 0x7f, 0xf6, 0xcc, 0x7c, 0x96, 0x3f, 0xa7, 0x17, 0x37, 0xcf, 0x3f, 0xdb, 0xee, 0x79, 0x66, 0xfe, 0x9f, 0xae, 0x0c, 0x3f, 0xdf, 0x93, 0x3f, 0xbf, 0x66, 0xe5, 0xdd, 0x7b, 0x4e, 0xfe, 0x67, 0xf7, 0xd1, 0xeb, 0xc7, 0x22, 0xdb, 0x32, 0x5c, 0x9f, 0xff, 0x48, 0x8b, 0xec, 0xde, 0xf9, 0xc7, 0xc9, 0xb1, 0x8a, 0x81, 0xf6, 0xed, 0xe8, 0x35, 0x43, 0xfe, 0xdf, 0xce, 0xff, 0xb8, 0x41, 0xfe, 0x47, 0x43, 0xfb, 0xaf, 0xf2, 0xce, 0x9e, 0x90, 0x7f, 0xed, 0xdd, 0xdd, 0x33, 0xff, 0xea, 0xf7, 0xff, 0xcf, 0x7d, 0x1e, 0xf2, 0x7f, 0xd2, 0xf5, 0x3f, 0x4e, 0xae, 0x1d, 0x23, 0xed, 0x97, 0x3d, 0xf3, 0x8f, 0x4b, 0x57, 0xcb, 0xf1, 0xde, 0xc2, 0xec, 0x35, 0xf7, 0x0d, 0x7d, 0xd4, 0xbb, 0xe7, 0xcf, 0x8a, 0x51, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x83, 0x5e, 0xa9, 0x31, 0xef, 0xfd, 0x9f, 0x5c, 0xed, 0x5c, 0xbd, 0x9e, 0xfe, 0xea, 0x1e, 0xc6, 0xf2, 0xa3, 0x32, 0x3b, 0x97, 0x39, 0x23, 0xc8, 0x99, 0xd1, 0xfb, 0xd1, 0xba, 0xc4, 0x98, 0x5e, 0x81, 0x1b, 0xd3, 0xde, 0x61, 0xa5, 0x1e, 0x20, 0x16, 0x8d, 0xf9, 0xdf, 0x23, 0xff, 0x28, 0x8c, 0xa7, 0x77, 0xcc, 0x26, 0x91, 0xff, 0xd3, 0xce, 0xff, 0xb3, 0x7d, 0xff, 0xfb, 0x13, 0x25, 0xff, 0x5d, 0xf2, 0x3f, 0xd2, 0xf7, 0xb5, 0x18, 0xaa, 0x1c, 0x78, 0x4f, 0xfe, 0xf9, 0x16, 0xc8, 0x51, 0x9c, 0xf1, 0xd7, 0x51, 0x97, 0x3e, 0x7f, 0x6e, 0xce, 0x59, 0xfe, 0x95, 0xb6, 0x5c, 0x25, 0xff, 0xb3, 0x5c, 0x72, 0xd5, 0xe5, 0xbd, 0x73, 0x15, 0xeb, 0xb3, 0x77, 0xf6, 0xad, 0xce, 0x7e, 0xce, 0xf5, 0xff, 0x5e, 0xf9, 0xaf, 0xaf, 0xe1, 0x8a, 0x0b, 0x75, 0xac, 0xf2, 0xff, 0xde, 0xf9, 0x1f, 0x5f, 0xbc, 0x2a, 0xc8, 0x5f, 0xfe, 0x6f, 0xca, 0xbf, 0xda, 0x62, 0x8b, 0xd6, 0xad, 0xed, 0x78, 0xff, 0xcf, 0xae, 0xaf, 0xb1, 0xae, 0xff, 0xef, 0x28, 0xf6, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x86, 0xfa, 0xff, 0x7c, 0x15, 0x7e, 0xd7, 0xd8, 0x67, 0x6c, 0x31, 0xfb, 0x60, 0xc6, 0x5c, 0x86, 0xea, 0x11, 0xea, 0xda, 0x62, 0x7e, 0x0d, 0xb5, 0x9e, 0x95, 0xf8, 0xf3, 0x5b, 0x99, 0x31, 0xce, 0x3e, 0x7b, 0xd4, 0xbe, 0x52, 0xff, 0xb0, 0x32, 0xff, 0x4a, 0xad, 0x85, 0xfc, 0xe5, 0x2f, 0x7f, 0xf9, 0xcb, 0x7f, 0xaf, 0xfc, 0xcf, 0xd7, 0x8b, 0x8f, 0xa1, 0x2a, 0xba, 0x5a, 0x9d, 0x51, 0x67, 0xed, 0xfb, 0x8a, 0x76, 0xcf, 0x48, 0x9d, 0x7d, 0x7c, 0x39, 0xff, 0xb3, 0xd9, 0x6f, 0x63, 0x35, 0x94, 0xdf, 0x3e, 0xff, 0x77, 0x99, 0x67, 0x17, 0xc5, 0x33, 0xbd, 0x6b, 0xaf, 0x23, 0x7d, 0xfe, 0x8f, 0x9f, 0xfb, 0xf2, 0xdf, 0x3f, 0xff, 0x91, 0x2a, 0x6c, 0xf9, 0xef, 0x93, 0xff, 0x59, 0xc2, 0xf2, 0x7f, 0x7a, 0xfe, 0x9f, 0x7f, 0x87, 0xee, 0x2e, 0xf9, 0x77, 0x57, 0xc5, 0x57, 0xf3, 0xef, 0xac, 0x8c, 0xaf, 0xf6, 0xa2, 0x45, 0x71, 0x3d, 0x82, 0x48, 0xf7, 0x83, 0x56, 0xf2, 0x37, 0x0f, 0x00, 0xf6, 0x9b, 0x79, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xab, 0x7a, 0xc5, 0x73, 0x95, 0x6f, 0x7d, 0xeb, 0x81, 0x1d, 0x93, 0x47, 0xf6, 0x6a, 0xe3, 0x98, 0xe3, 0xbf, 0x5e, 0x70, 0xa4, 0x46, 0x54, 0x2b, 0x7b, 0xdd, 0xb9, 0xbe, 0x5a, 0xa4, 0x47, 0x4a, 0xb2, 0x35, 0x4a, 0xf9, 0xf1, 0x98, 0x9e, 0xd5, 0xf0, 0x3a, 0xab, 0x15, 0xaa, 0x55, 0xa2, 0xfd, 0xc7, 0x20, 0xca, 0x75, 0x0c, 0x47, 0x53, 0x05, 0xc1, 0x8c, 0xb5, 0xbd, 0xe5, 0x2f, 0xff, 0xae, 0x5f, 0x8f, 0x99, 0x51, 0x0d, 0xdc, 0x53, 0x8d, 0x12, 0x83, 0xd5, 0x37, 0xeb, 0xf2, 0xff, 0xce, 0x0a, 0xde, 0xeb, 0x6a, 0xbe, 0xb2, 0x9f, 0xa6, 0x68, 0x4c, 0x50, 0xfe, 0xdf, 0xcf, 0xbf, 0x7a, 0x34, 0xde, 0x93, 0x7f, 0x47, 0x6d, 0xf9, 0x93, 0xf2, 0x8f, 0x86, 0x99, 0xcf, 0x63, 0xf3, 0x66, 0xde, 0x90, 0xff, 0x8c, 0xfb, 0x6f, 0x4f, 0x6b, 0xe2, 0x7d, 0xe7, 0x7f, 0x47, 0x75, 0xf1, 0xfc, 0x2b, 0xc3, 0x9c, 0xd7, 0xec, 0x98, 0xff, 0xfa, 0xaa, 0x48, 0xf9, 0xcf, 0xbf, 0xfe, 0xef, 0x9c, 0x7f, 0xa5, 0x77, 0x68, 0xf5, 0x9d, 0xa1, 0xfb, 0x35, 0x33, 0xd7, 0x4f, 0x91, 0xbf, 0x0a, 0xf4, 0x3b, 0xf4, 0xff, 0x77, 0x3e, 0x1f, 0x67, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0x8d, 0xac, 0x75, 0xfe, 0x9e, 0x75, 0xb6, 0xe2, 0x62, 0xe5, 0x3a, 0x8a, 0xb5, 0x15, 0xc0, 0xe2, 0x72, 0x7d, 0xcf, 0xde, 0xe3, 0x01, 0x6b, 0xd6, 0x4c, 0xae, 0xae, 0xae, 0xf7, 0xdd, 0xfc, 0xb3, 0xa3, 0xa0, 0xd7, 0x1f, 0xdb, 0xef, 0xb7, 0xf0, 0x9f, 0x9e, 0x7f, 0xf7, 0x3a, 0xda, 0xdd, 0x9f, 0x89, 0xa7, 0xe7, 0xff, 0xf3, 0x9d, 0x61, 0x45, 0xfe, 0xf5, 0x35, 0x3b, 0x8f, 0x87, 0x64, 0xfd, 0xbd, 0xfc, 0xb3, 0x33, 0x7b, 0x76, 0x39, 0xff, 0xe7, 0xdc, 0x13, 0xe4, 0x7f, 0x97, 0xf6, 0xdf, 0x21, 0xff, 0xcd, 0xf2, 0xef, 0x5f, 0x47, 0xbb, 0x3a, 0xb7, 0xec, 0x7a, 0x5b, 0xef, 0x4d, 0xdf, 0xff, 0x8e, 0x86, 0x79, 0xe0, 0xe7, 0x6b, 0x2f, 0x77, 0xaf, 0xa3, 0x5c, 0xf9, 0xfe, 0xf7, 0xf4, 0x6a, 0xc9, 0x58, 0x52, 0xcf, 0xb6, 0xcf, 0xf1, 0x89, 0x29, 0xf3, 0xe6, 0xe5, 0xbf, 0x7b, 0xfe, 0xb5, 0x6f, 0xe3, 0xcf, 0xcf, 0x7f, 0xe5, 0xd1, 0x7f, 0xc6, 0xd9, 0x21, 0xff, 0x77, 0xd7, 0x72, 0xcb, 0xff, 0x5d, 0xd7, 0xad, 0xd1, 0xfe, 0x7f, 0xcc, 0xef, 0x40, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x7e, 0x01 }; // Font characters rectangles data static const Rectangle terminalFontRecs[95] = { { 4, 4, 4 , 16 }, { 16, 4, 1 , 11 }, { 25, 4, 3 , 3 }, { 36, 4, 6 , 11 }, { 50, 4, 5 , 11 }, { 63, 4, 5 , 11 }, { 76, 4, 5 , 11 }, { 89, 4, 1 , 2 }, { 98, 4, 2 , 13 }, { 108, 4, 2 , 13 }, { 118, 4, 3 , 3 }, { 129, 4, 5 , 5 }, { 142, 4, 1 , 3 }, { 151, 4, 5 , 1 }, { 164, 4, 1 , 1 }, { 173, 4, 6 , 12 }, { 187, 4, 5 , 11 }, { 200, 4, 2 , 11 }, { 210, 4, 5 , 11 }, { 223, 4, 5 , 11 }, { 236, 4, 5 , 11 }, { 4, 28, 5 , 11 }, { 17, 28, 5 , 11 }, { 30, 28, 5 , 11 }, { 43, 28, 5 , 11 }, { 56, 28, 5 , 11 }, { 69, 28, 1 , 8 }, { 78, 28, 1 , 10 }, { 87, 28, 4 , 5 }, { 99, 28, 5 , 3 }, { 112, 28, 4 , 5 }, { 124, 28, 5 , 11 }, { 137, 28, 11 , 11 }, { 156, 28, 5 , 11 }, { 169, 28, 5 , 11 }, { 182, 28, 5 , 11 }, { 195, 28, 5 , 11 }, { 208, 28, 5 , 11 }, { 221, 28, 5 , 11 }, { 234, 28, 5 , 11 }, { 4, 52, 5 , 11 }, { 17, 52, 1 , 11 }, { 26, 52, 5 , 11 }, { 39, 52, 5 , 11 }, { 52, 52, 5 , 11 }, { 65, 52, 7 , 11 }, { 80, 52, 5 , 11 }, { 93, 52, 5 , 11 }, { 106, 52, 5 , 11 }, { 119, 52, 5 , 13 }, { 132, 52, 5 , 11 }, { 145, 52, 5 , 11 }, { 158, 52, 5 , 11 }, { 171, 52, 5 , 11 }, { 184, 52, 5 , 11 }, { 197, 52, 7 , 11 }, { 212, 52, 5 , 11 }, { 225, 52, 5 , 11 }, { 238, 52, 5 , 11 }, { 4, 76, 2 , 13 }, { 14, 76, 6 , 12 }, { 28, 76, 2 , 13 }, { 38, 76, 5 , 4 }, { 51, 76, 5 , 1 }, { 64, 76, 2 , 2 }, { 74, 76, 5 , 8 }, { 87, 76, 5 , 11 }, { 100, 76, 5 , 8 }, { 113, 76, 5 , 11 }, { 126, 76, 5 , 8 }, { 139, 76, 4 , 11 }, { 151, 76, 5 , 10 }, { 164, 76, 5 , 11 }, { 177, 76, 1 , 11 }, { 186, 76, 1 , 13 }, { 195, 76, 5 , 11 }, { 208, 76, 1 , 11 }, { 217, 76, 7 , 8 }, { 232, 76, 5 , 8 }, { 4, 100, 5 , 8 }, { 17, 100, 5 , 10 }, { 30, 100, 5 , 10 }, { 43, 100, 4 , 8 }, { 55, 100, 5 , 8 }, { 68, 100, 3 , 11 }, { 79, 100, 5 , 8 }, { 92, 100, 5 , 8 }, { 105, 100, 7 , 8 }, { 120, 100, 5 , 8 }, { 133, 100, 5 , 10 }, { 146, 100, 5 , 8 }, { 159, 100, 3 , 13 }, { 170, 100, 1 , 15 }, { 179, 100, 3 , 13 }, { 190, 100, 5 , 3 }, }; // Font characters info data // NOTE: No chars.image data provided static const GlyphInfo terminalFontChars[95] = { { 32, 0, 14, 4, { 0 }}, { 33, 1, 3, 3, { 0 }}, { 34, 1, 3, 5, { 0 }}, { 35, 1, 3, 8, { 0 }}, { 36, 1, 3, 7, { 0 }}, { 37, 1, 3, 7, { 0 }}, { 38, 1, 3, 7, { 0 }}, { 39, 1, 3, 3, { 0 }}, { 40, 1, 2, 4, { 0 }}, { 41, 1, 2, 4, { 0 }}, { 42, 1, 3, 5, { 0 }}, { 43, 1, 7, 7, { 0 }}, { 44, 1, 13, 3, { 0 }}, { 45, 1, 9, 7, { 0 }}, { 46, 1, 13, 3, { 0 }}, { 47, 1, 2, 8, { 0 }}, { 48, 1, 3, 7, { 0 }}, { 49, 1, 3, 4, { 0 }}, { 50, 1, 3, 7, { 0 }}, { 51, 1, 3, 7, { 0 }}, { 52, 1, 3, 7, { 0 }}, { 53, 1, 3, 7, { 0 }}, { 54, 1, 3, 7, { 0 }}, { 55, 1, 3, 7, { 0 }}, { 56, 1, 3, 7, { 0 }}, { 57, 1, 3, 7, { 0 }}, { 58, 1, 6, 3, { 0 }}, { 59, 1, 6, 3, { 0 }}, { 60, 1, 7, 6, { 0 }}, { 61, 1, 8, 7, { 0 }}, { 62, 1, 7, 6, { 0 }}, { 63, 1, 3, 7, { 0 }}, { 64, 2, 3, 15, { 0 }}, { 65, 1, 3, 7, { 0 }}, { 66, 1, 3, 7, { 0 }}, { 67, 1, 3, 7, { 0 }}, { 68, 1, 3, 7, { 0 }}, { 69, 1, 3, 7, { 0 }}, { 70, 1, 3, 7, { 0 }}, { 71, 1, 3, 7, { 0 }}, { 72, 1, 3, 7, { 0 }}, { 73, 1, 3, 3, { 0 }}, { 74, 1, 3, 7, { 0 }}, { 75, 1, 3, 7, { 0 }}, { 76, 1, 3, 7, { 0 }}, { 77, 1, 3, 9, { 0 }}, { 78, 1, 3, 7, { 0 }}, { 79, 1, 3, 7, { 0 }}, { 80, 1, 3, 7, { 0 }}, { 81, 1, 3, 7, { 0 }}, { 82, 1, 3, 7, { 0 }}, { 83, 1, 3, 7, { 0 }}, { 84, 1, 3, 7, { 0 }}, { 85, 1, 3, 7, { 0 }}, { 86, 1, 3, 7, { 0 }}, { 87, 1, 3, 9, { 0 }}, { 88, 1, 3, 7, { 0 }}, { 89, 1, 3, 7, { 0 }}, { 90, 1, 3, 7, { 0 }}, { 91, 1, 2, 4, { 0 }}, { 92, 1, 2, 8, { 0 }}, { 93, 1, 2, 4, { 0 }}, { 94, 1, 3, 7, { 0 }}, { 95, 1, 15, 7, { 0 }}, { 96, 1, 0, 4, { 0 }}, { 97, 1, 6, 7, { 0 }}, { 98, 1, 3, 7, { 0 }}, { 99, 1, 6, 7, { 0 }}, { 100, 1, 3, 7, { 0 }}, { 101, 1, 6, 7, { 0 }}, { 102, 1, 3, 6, { 0 }}, { 103, 1, 6, 7, { 0 }}, { 104, 1, 3, 7, { 0 }}, { 105, 1, 3, 3, { 0 }}, { 106, 1, 3, 3, { 0 }}, { 107, 1, 3, 7, { 0 }}, { 108, 1, 3, 3, { 0 }}, { 109, 1, 6, 9, { 0 }}, { 110, 1, 6, 7, { 0 }}, { 111, 1, 6, 7, { 0 }}, { 112, 1, 6, 7, { 0 }}, { 113, 1, 6, 7, { 0 }}, { 114, 1, 6, 6, { 0 }}, { 115, 1, 6, 7, { 0 }}, { 116, 1, 3, 5, { 0 }}, { 117, 1, 6, 7, { 0 }}, { 118, 1, 6, 7, { 0 }}, { 119, 1, 6, 9, { 0 }}, { 120, 1, 6, 7, { 0 }}, { 121, 1, 6, 7, { 0 }}, { 122, 1, 6, 7, { 0 }}, { 123, 1, 2, 5, { 0 }}, { 124, 1, 1, 3, { 0 }}, { 125, 1, 2, 5, { 0 }}, { 126, 1, 8, 7, { 0 }}, }; // Style loading function: terminal static void GuiLoadStyleTerminal(void) { // Load style properties provided // NOTE: Default properties are propagated for (int i = 0; i < TERMINAL_STYLE_PROPS_COUNT; i++) { GuiSetStyle(terminalStyleProps[i].controlId, terminalStyleProps[i].propertyId, terminalStyleProps[i].propertyValue); } // Custom font loading // NOTE: Compressed font image data (DEFLATE), it requires DecompressData() function int terminalFontDataSize = 0; unsigned char *data = DecompressData(terminalFontData, TERMINAL_COMPRESSED_DATA_SIZE, &terminalFontDataSize); Image imFont = { data, 256, 256, 1, 2 }; Font font = { 0 }; font.baseSize = 16; font.glyphCount = 95; // Load texture from image font.texture = LoadTextureFromImage(imFont); UnloadImage(imFont); // Uncompressed data can be unloaded from memory // Copy char recs data from global fontRecs // NOTE: Required to avoid issues if trying to free font font.recs = (Rectangle *)malloc(font.glyphCount*sizeof(Rectangle)); memcpy(font.recs, terminalFontRecs, font.glyphCount*sizeof(Rectangle)); // Copy font char info data from global fontChars // NOTE: Required to avoid issues if trying to free font font.glyphs = (GlyphInfo *)malloc(font.glyphCount*sizeof(GlyphInfo)); memcpy(font.glyphs, terminalFontChars, font.glyphCount*sizeof(GlyphInfo)); GuiSetFont(font); // Setup a white rectangle on the font to be used on shapes drawing, // this way we make sure all gui can be drawn on a single pass because no texture change is required // NOTE: Setting up this rectangle is a manual process (for the moment) Rectangle whiteChar = { 63, 4, 2, 2 }; SetShapesTexture(font.texture, whiteChar); }