资源描述:
《SDL入门(四)文字的显示.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、个人收集整理勿做商业用途SDL文字的显示在游戏中是经常需要输出文字的,如计数、提示、显示分数,这次写这个主要是为我那个俄罗斯方块计分。当然了显示分数可以用图片,也可以用专门的文字绘制函数,这里主要讲用函数这种方法。1、下载适合VS2005使用的文字操纵库下载地址如下:http://www.libsdl.org/projects/SDL_ttf/release/SDL_ttf-devel-2.0.9-VC8.zip2、解压后拷贝文件,跟第一篇文章一样3、配置IDE环境:剩下的就是敲代码了/*个人收集整理勿做
2、商业用途作者:云飞功能:SDL输出文字*/#include<stdio.h>#include<stdlib.h>#include#include <SDL/SDL_ttf.h>constint SCREEN_WIDTH=640;constintSCREEN_HEIGHT=480;constintSCREEN_BPP =32;TTF_Font*font=NULL;SDL_Surface *screen=NULL;/*function name:initSDLparameter:void
3、//noneparameter note:return:int1:initialSDLnormally个人收集整理勿做商业用途0:initial SDLabnormallyfunction:initial SDL*/intinitSDL(void){ﻩ//initall SDL subsystemsﻩif(SDL_Init(SDL_INIT_EVERYTHING)==-1){ﻩprintf("初始化失败!");ﻩreturn0;}//initscreenﻩscreen= SDL_SetVideoMod
4、e(SCREEN_WIDTH,SCREEN_HEIGHT,SCREEN_BPP,SDL_SWSURFACE);ﻩif(screen==NULL){ﻩprintf("初始化屏幕失败!请检查显卡!");ﻩreturn0;}//initttfif(TTF_Init()==-1)ﻩ{个人收集整理勿做商业用途ﻩﻩprintf("初始化字库失败!\n");ﻩreturn0;}return1;}/*function name:quitSDLparameter:voidparameternote:return:voi
5、dfunction:closs SDl*/voidquitSDL(void){ﻩ//Closethefont that was usedTTF_CloseFont(font);ﻩTTF_Quit();ﻩSDL_Quit();}/*functionname:loadMessageparameter:const个人收集整理勿做商业用途char *text,SDL_Color &textColor,constchar*FontFile,int sizeparameter note:ﻩﻩconstchar *te
6、xt:the textcontentﻩﻩSDL_Color&textColor:textcolorﻩﻩconstchar*FontFile:fontfilenameﻩintsize:textsizereturn:SDL_Surface*function:loadfontfile*/SDL_Surface*loadMessage(constchar *text,SDL_Color&textColor,const char*FontFile,intsize){font=TTF_OpenFont("simhei
7、.ttf",size);if (font==NULL)ﻩ{ﻩprintf("打开字体失败!\n");ﻩreturn0;}ﻩreturn TTF_RenderText_Solid(font,text,textColor);}/*个人收集整理勿做商业用途我这破英语水平都能猜出前面TTF_FontTTF_OpenFont TTF_RenderText_Solid TTF_CloseFont的大概意思,相信你更能,都是些函数不必知道它怎么写的会用就行了都是些套路,别人写好的函数,咱们就是用用没什么难度,可以看出T
8、TF_RenderText_Solid返回值是SDL_Surface**//*你是否注意到了simhei.ttf这个文件,TTF是一种字库名称,兴趣的可以查查百度知道(相信你会知道的更多)就是咱们那宋体呀楷体什么的,可以到系统的fonts(C:Windows\Fonts)文件夹下找到,找到后放到cpp文件同目录下(你在搜索栏那儿一搜出来了)这个是那个黑体*//*function name:showTextparameter: