




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SDL文字的显示在游戏中是经常需要输出文字的,如计数、提示、显示分数,这次写这个主要是为我那个俄罗斯方块计分。当然了显示分数可以用图片,也可以用专门的文字绘制函数,这里主要讲用函数这种方法。1、下载适合VS2005使用的文字操纵库下载地址如下:/projects/SDL_ttf/release/SDL_ttf-devel-2.0.9-VC8.zip 2、解压后拷贝文件,跟第一篇文章一样3、配置IDE环境:剩下的就是敲代码了/*作者:云飞功能:SDL输出文字*/#include #include #include #include const int SCREEN_WIDTH = 640;const int SCREEN_HEIGHT = 480;const int SCREEN_BPP = 32;TTF_Font *font = NULL;SDL_Surface *screen = NULL;/*function name:initSDL parameter:void/noneparameter note:return:int1:initial SDL normally0:initial SDL abnormallyfunction:initial SDL*/int initSDL(void)/init all SDL subsystemsif (SDL_Init(SDL_INIT_EVERYTHING) = -1)printf(初始化失败!n);return 0;/init screenscreen = SDL_SetVideoMode(SCREEN_WIDTH,SCREEN_HEIGHT,SCREEN_BPP,SDL_SWSURFACE);if (screen = NULL)printf(初始化屏幕失败!请检查显卡!n);return 0;/init ttfif (TTF_Init() = -1)printf(初始化字库失败!n);return 0;return 1;/*function name:quitSDL parameter:voidparameter note:return:voidfunction:closs SDl*/void quitSDL(void)/Close the font that was usedTTF_CloseFont(font);TTF_Quit();SDL_Quit();/*function name: loadMessageparameter:const char *text,SDL_Color &textColor,const char *FontFile,int sizeparameter note:const char *text:the text contentSDL_Color &textColor:text colorconst char *FontFile:font file nameint size:text sizereturn:SDL_Surface* function:load font file*/SDL_Surface* loadMessage(const char *text,SDL_Color &textColor,const char *FontFile,int size)font = TTF_OpenFont(simhei.ttf,size);if (font = NULL)printf(打开字体失败!n);return 0;return TTF_RenderText_Solid(font,text,textColor);/*我这破英语水平都能猜出前面TTF_Font TTF_OpenFont TTF_RenderText_Solid TTF_CloseFont的大概意思,相信你更能,都是些函数不必知道它怎么写的会用就行了都是些套路,别人写好的函数,咱们就是用用没什么难度,可以看出TTF_RenderText_Solid返回值是SDL_Surface*/*你是否注意到了simhei.ttf这个文件,TTF是一种字库名称,兴趣的可以查查百度知道(相信你会知道的更多)就是咱们那宋体呀楷体什么的,可以到系统的fonts(C:WindowsFonts)文件夹下找到,找到后放到cpp文件同目录下(你在搜索栏那儿一搜出来了)这个是那个黑体*/*function name: showTextparameter:SDL_Surface *msg,int x,int y,int width,int height,SDL_Surface *destinationparameter note:SDL_Surface *msg:the text handlerint x:texts left positionint y:texts top positionint width:texts widthint height:texts heightSDL_Surface *destination:where to showreturn:voidfunction:show text to display memory*/void showText(SDL_Surface *msg,int x,int y,int width,int height,SDL_Surface *destination)SDL_Rect textPosition;textPosition.x = x;textPosition.y = y;textPosition.w = (width = 0) ? msg-w:width;textPosition.h = (height = 0) ? msg-h:height;SDL_BlitSurface(msg,NULL,destination,&textPosition);void showScreen(void)/刷新屏幕SDL_Flip(screen);int main(int argc,char *argv)SDL_Surface *text;SDL_Color textColor = 255,255,255;/white/initial SDLinitSDL();text = loadMessage(successfully,textColor,simhei.ttf,60);/show text to display memoryshowText(text,0,0,0,0,screen);showScreen();SDL_Delay(5000);quitSDL(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民爆安全培训课件
- 船舶机舱考试题库及答案
- 测量考试题库及答案解析
- 特色新质生产力发展模式与案例
- 发展新质生产力的主要做法
- 民族舞课程课件
- 全球新质生产力的发展现状
- 2025年微生物学临床微生物培养鉴定操作评估试卷答案及解析
- 三中全会新质生产力解读
- 2025年胸心外科胸部手术术中护理操作考核答案及解析
- 《劳动工具的改进设计》六年级综合实践课件
- 村级换届业务培训
- 《三角函数的诱导公式(第1课时)》导学案2
- 全国赛课一等奖2024版新教材统编版七年级历史上册《中华文明的起源》课件
- GB/T 22838.5-2024卷烟和滤棒物理性能的测定第5部分:卷烟吸阻和滤棒压降
- 江苏省镇江市2024-2025学年高三上学期期初考试数学试卷(解析版)
- 全国职业院校技能大赛高职组(供应链管理赛项)备赛试题库(含答案)
- JT叔叔医道课1-50集完整稿
- 部编版五年级道德与法治上册第3课《主动拒绝烟酒与毒品》精美课件(第3课时)
- JB-T 8881-2020 滚动轴承 渗碳轴承钢零件 热处理技术条件
- 2024年四川省水电投资经营集团普格电力有限公司招聘笔试参考题库含答案解析
评论
0/150
提交评论