版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、FLIC动画文件的播放程序设计改调色的相应的RGB值。通常FLIC图像文件的头一帧的第一块数据便是该类型。在程序设计中我们定义了一个256色的调色板数组:charpalette768;用于完成调色板的初始化工作。2.类型07H该类型数据以字节为基础,只适用于.FLC文件,处理对第一帧图像的改变情况较为适用。它含有本帧图像对于上与帧图像的改变部分。这种块类型是一种最常用的、最复杂的块类型,一般除了第一帧外后面的各帧通常采用这种块类型进行行数据压缩存储。它的描述如下:字节含义第一个字:需要改变的行的数量第旰二个字开始:是具体需要改变的数据本身。每一行是进行单独的压缩的,这种技术申的采用大大压缩了.
2、FLC文件长度。它沱的具体定义为:可选字、小块数及小块的值。可选字:当高位=11时,低寅位部分为跳行数。该字可以有多个,其跳氓行数相加。当高位=10时,低位部分内容为当前行的最后一个字节。小块数龈:当高位=00时,此字表示小块数的值殷。小块:第一个字节:跳列数。第二个字节:小块类型:当该值为正时:表示要从块中搬到图像中的像素个数N,其后就蒹是N个连续的像素数据;当该值为负时:庙它的绝对值N表示要重复从块中搬到图像黾中的像素的次数,其后就是那个像素的数痕据。第三个字节:块中的图像数据。3.类型0BH与类型04H类似,它与VGA的13H模式相匹配。桓4.类型0CH与类型07H类似,但它以字节为基础
3、,通常用于.FLI文酱件字节含义第一个字:从屏幕上方开始和上一帧相同的行数即本帧中第一寅行要改变的行号。例如:如果有一个改变磨仅仅只是在屏幕的底部,那么此时该字值为199。第二个字:需要改变的行馈的数量。第三个字以后:是具体需要改变的数据本身。每一行是进行单独的压酩缩的,这种技术的采用大大压缩了.FIC文件长度。它的具体定义为:小块数及推块的值。小块数:此字表示小块的戗个数值,它是本行中含有小块的个数。当镬小块数=0时,说明本行和上一行相同,馀不用进行重新处理。小块:第一个腴字节:跳列数。第二个字节:小块类型:磋当该值为正时:表示要从块中搬到图像中鎏的像素个数N,其后就是N个连续的像素墨数据;
4、当该值为负时:它的绝对值N表示杌要重复从块中搬到图像中的像素的次数,栅其后就是那个像素的数据。第三个字节:块中的图像数据。5.类型0DH馅该类型没有数据,该帧的所有像素值都为0。在实际应用中通常它只产生在当咋用户使用3DS创建一个新的FLIC文帙件中的第一帧。6.类型0FH哿该类型用于压缩图像,通常只用于第一帧架。它采用了Run-Length压缩方胧法。该方法与类型07H及0CH中的行数据压缩方法是相似的。只是在该方法中正负号的定义与类型07H和0CH恰好相反。字节含义第一字节本行中胶小块数。第二字节小块的具体内容。第一字节:小块类型:当该值为负时:它的绝对值表示要搬到图像中的像素个氓数,其后
5、就是数据;当该值为正时,表示伏要将下一个像素复制到图像中的次数,该像素紧随其后。第二个字节:块中的图像数据。7.类型10H这季种类型不进行压缩,块中的数据个数一定蚧为图像的长宽相乘。这种类型在实际应用瑁中一般不用。下面具体讨论播放程序坍的C语言程序设计方法,本文中的程序是窃针对.FLI格式的动画文件而进行的程序设计。读者如果要播放.FIC格式的之动画文件,只需根据.FIC文件格式的纛具体定义,并参照下面的程序设计方法即可设计出相应的程序。四、程序设计1.第一帧图像的播放程序voi侔dFirst-Framechar胶*Video-Mem;FILE*异fli-fp;intLin褐e-PacketN
6、umberin萱tSize-Count=0int砂Screen-Char;long骆Sereen-Count=0L;memset;doLine-PacketNumber=fget肼c;whileSize砀-Count=fgetc;if=柁=0X80Size-Cou竿nt=;whileSc酚reen-Count+;Ser面een-Char=fgete;*縻Video-Mem+=Screen峋-Char;elseSereen-Char=fg赆ete;while;后续各帧图像的播放程序voidOt告her-Framechar*Vi渑deo-Mem;FILE*Fli鳗-fp;intUpdate-Li瘤
7、neNumber;intS猖ize-Count=0,Skip-Col=0;intUpdate-LineCount=0;intSc沉reen-Char;intNumber-Packet;char*恧Video-p;while飒Video-p=Video-Me烧m;Number-Packet=fgetcUpdate-Line柿Count+;whileSkip-Col=fgete;艿Video-Mem=Video-Me矜m+Skip-Col;Size-傺Count=fgetc;if=蜕0x80)Size-Cou蹦nt=256-Size-Count;Screen-Char=fgetc;while*Vi
8、deo-Me龊m+=Sereen-Char;鲂elsewhileScreen-Char=fgetc;*Video-Mem+=Sc鸵reen-Char;荮Video-Mem=Video墉-p+320;3.播枥放程序的调用及其它几个子程序vo匣idTransmit-FliFI喈LE*Fli-fp;int霉NUmber-Chunk;if&仃header,1,sizeof,Fl镬i-fp)=sizeof)沅ifprintf;ex携it;if*frame-h儒ead,1,sizeof,Fli-fp)=sizeof);ifprintf;exit;骱if&chunk-head觥,1,sizeof,Fli-f
9、p)=sizeof);if,Fl蠼i-fp)=sizeof);e宰lseprintf;exit;fgetc;fgetc烛;if,Fli-fp)=768圬);elseprintf;exit;if&chu渍nk-head,1,sizeof祈,Fli-fp)=sizeof);elseprintf;乳exit;ShowFli-妃Frame;fclose;菀voidShowFli-Fram啜eFILE*Fli-fp;longFrame-DataAddress;intFirst-UpdateLine,End-UpdateLine;intFrame-Number=2,Adjust-Cha伥r=0;init;
10、setvg便apalette;First-F谨rame,Fli-fp);Fra萝me-DataAddress=fte畚ll;whileFra弪me-DataAddress=ftell;Adjust-Char=f货getc;iffseek;if&frame-head,1,s妄izeof,Fli-fp)=sizeof);ifexit;ifif&chunk-head,儡1,sizeof,Fli-fp)掘=sizeof);if,Fli蹿-fp)=sizeof);罘elseprintf;exit;癍if,Fli-fp)=sizeof);elseprinft;exit;O玎ther-Frame,Fli-fp,肱End-UpdateLine);筑Frame-Number+桉+;voidvide撰o-initunionRE瀵GSr;=0x0013;in侑t86;voidvideo蹒-textunionREG圈Sr;=0x0003;int巩86;setvgapale赌ttechar*p;u第nionREGSr;struct沸SREGSsr;inti;f馋or*=*1;=0x1012率;=0;=256;=FP-OFF;=FP-
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026合创物业面试题目及答案
- 2026捷普电子面试题及答案
- 2025-2026学年北京市东城区初二(下)期末考试英语试卷(含答案)
- 2026年洛阳市老城区住房和城乡建设局人员招聘笔试参考试题及答案详解
- 2026舟山市定海区人民检察院编外招聘1人考试备考题库及答案详解
- 2026江苏苏州市太仓市人力资源有限公司招聘4人考试参考题库及答案详解
- 2026年襄樊市襄阳区住房和城乡建设局人员招聘笔试备考题库及答案详解
- Python网络渗透编程 课件 项目三 信息搜集
- 2026中国社会科学院招聘土木工程师5人(北京)考试参考题库及答案详解
- 四川省引大济岷水资源开发有限公司2026年第三批次公开招聘笔试备考试题及答案详解
- 北京市大兴区发展和改革委员会招聘劳务派遣2人笔试参考题库及答案详解
- 2026年度中国未来产业深度分析
- 2026年武汉市第六医院江汉大学附属医院医护人员招聘笔试备考试题及答案详解
- 2026年武汉亚洲心脏病医院医护人员招聘考试备考题库及答案详解
- GB/T 47439-2026新能源汽车维修作业安全要求
- 2026年人工智能赋能教育教学培训心得
- 储能项目施工组织方案
- 公司总经理2026年工作总结及2026年工作计划
- 2025年临夏州中小学教师招聘考试真题及答案
- 鲜风生活数字化转型
- 日本佛教革新之光:亲鸾判教思想的深度剖析与时代映照
评论
0/150
提交评论