Steward
分享是一種喜悅、更是一種幸福
手機 - Blackberry Passport - Core Native (C/C++) - SDL v1.2 - Open Font
main.cpp
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 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | #include <stdio.h> #include <stdio.h> #include <stdlib.h> #include <SDL.h> #include <SDL_image.h> #include <SDL_ttf.h> int main ( int argc, char * args[]) { int loop = 1; SDL_Event event; if ( SDL_Init ( SDL_INIT_VIDEO ) != 0) { printf ( "%s, failed to SDL_Init\n" , __func__ ); return -1; } SDL_Surface * screen = NULL ; screen = SDL_SetVideoMode (1440, 1440, 32, SDL_HWSURFACE | SDL_DOUBLEBUF ); if (screen == NULL ) { printf ( "%s, failed to SDL_SetVideMode\n" , __func__ ); return -1; } SDL_FillRect (screen, &screen->clip_rect, SDL_MapRGB (screen->format, 0xff, 0xff, 0xff)); if ( TTF_Init () == -1) { printf ( "failed to TTF_Init\n" ); return -1; } SDL_Rect of = {0}; SDL_Color textColor = {0xff, 0, 0}; TTF_Font *font = TTF_OpenFont ( "app/native/lato.ttf" , 100); SDL_Surface *msg = TTF_RenderText_Solid (font, "Lesson 7. True Type Fonts" , textColor); of .x = 100; of .y = 600; SDL_BlitSurface (msg, NULL , screen, & of ); SDL_ShowCursor (0); SDL_Flip (screen); while ( loop ) { while ( SDL_PollEvent (&event)) { if (event. type == SDL_KEYDOWN ) { loop = 0; } } } TTF_CloseFont (font); SDL_FreeSurface (msg); TTF_Quit (); SDL_Quit (); return 0; } |
bar-descriptor.xml
<?xml version="1.0" encoding="utf-8" standalone="no"?> <qnx xmlns="http://www.qnx.com/schemas/application/1.0"> <id>com.steward.sdl.ch7</id> <name>ch7</name> <filename>ch7</filename> <versionNumber>1.0.0</versionNumber> <buildId>1</buildId> <description>Lesson 7. True Type Fonts</description> <author>Steward</author> <authorId>gYAAgGE4qaHzBnzEAu8JKe4G1OI</authorId> <asset path="main" entry="true" type="Qnx/Elf">main</asset> <asset path="lato.ttf">lato.ttf</asset> <asset path="lib" type="Qnx/Elf">lib</asset> <permission system="true">run_native</permission> <env var="LD_LIBRARY_PATH" value="app/native/lib"/> </qnx>
Makefile
main: main.cpp ntoarmv7-gcc main.cpp -g -o main lib/libSDL-1.2.so.11 -Iinclude lib/libSDL_image-1.2.so.8 lib/libSDL_ttf-2.0.so.10 $(QNX_TARGET)/lib/libwebp.a blackberry-nativepackager -package main.bar bar-descriptor.xml -devMode -debugToken ${HOME}/.rim/debugtoken_q30.bar clean: rm -rf main rm -rf main.bar
完成