Steward
分享是一種喜悅、更是一種幸福
程式語言 - Simple DirectMedia Layer (SDL) - v1.2 - C/C++ - Open Font from Memory
參考資訊:
https://www.libsdl.org/release/SDL-1.2.15/docs/html/index.html
main.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | #include <stdio.h> #include <stdlib.h> #include <SDL.h> #include <SDL_ttf.h> #include "hex_font.h" int main ( int argc, char **args) { char buf[255] = {0}; SDL_Surface *screen = NULL ; SDL_Init ( SDL_INIT_VIDEO ); screen = SDL_SetVideoMode (320, 240, 16, SDL_HWSURFACE ); TTF_Init (); SDL_RWops *rw = SDL_RWFromMem (hex_font, sizeof (hex_font)); TTF_Font *font = TTF_OpenFontRW (rw, 1, 30); SDL_FillRect (screen, &screen->clip_rect, SDL_MapRGB (screen->format, 0x00, 0x00, 0x00)); SDL_Color col = {0, 255, 0}; SDL_Rect rt = {50, 100, 0, 0}; SDL_Surface *msg = TTF_RenderUTF8_Solid (font, "司徒的教學網站" , col); SDL_BlitSurface (msg, NULL , screen, &rt); SDL_Flip (screen); SDL_FreeSurface (msg); SDL_Delay (3000); TTF_CloseFont (font); TTF_Quit (); SDL_Quit (); return 0; } |
編譯、執行
$ gcc main.c -o main -lSDL -lSDL_ttf -I/usr/include/SDL $ ./main