计算机理论

计算机网络
计算机理论
计算机应用
电子商务

本类阅读TOP10

·Frontpage网页制作
·C语言实现串行通信接口程序
·C#做的ASP.NET登錄篇
·Foxpro DBF数据库转换成SQL Server 6.5表的几种方法
·企业信息化的新选择——Intranet
·动态哈夫曼编码的改进
·论计算机网络中服务的概念
·Solaris下PRO*C和OCI程序设计分析与比较
·Visual C++中的开放数据库连接技术
·多媒体创作系统的设计与实现

分类导航
演讲致辞党团范文
心得体会领导讲话
经验介绍事迹材料
总结汇报计划方案
常用范文写作指南
证券金融银行管理
债务市场保险租赁
金融研究证券投资
财务管理投资决策
财务分析融资决策
财务管理市场营销
会计审计会计审计
成本会计管理会计
CPA行业管理学
战略竞争旅游管理学
成本管理管理学理论
物流管理人力资源管理
财政税收财政政策
财税法规税务研讨
税收理论国债研究
财政研究经济学
中国经济经济学理论
新经济学产业经济
国际经济经济学相关
地方经济发展战略
国际贸易公共管理
公共政策行政管理
经济管理企业战略
管理理论市场营销
企业研究企业文化
文化类西方文化
传统文化社会学相关
艺术学美学
音乐影视
艺术理论社会学
伦理道德环境保护
人口问题农村研究
教育学历史学
教育学国学
理工科理科相关
统计学物理学
工业设计交通
土建水利学材料工程学
电子学通信学
化工计算机
计算机网络计算机理论
计算机应用电子商务
文学外国语
人物研究哲学
哲学相关思想哲学
科技哲学中国哲学
西方哲学逻辑学
政治政治相关
民族主义资本主义
社会主义马克思主义
法律行政法
法学理论司法制度
经济法民法
医学医学
临床医学药学
其他文秘
公务员考试最新资讯
考试资料复习指导
面试指南教育教学
静态图像的直接显示

作者:未知 来源:应用文写作网 加入时间:2005-12-29 月光软件站

在很多游戏中,有大量的图像文件,一般只能在游戏过程中看到,有的还需过关斩将才能看到,而且不易看到全部图像。在金山汉字系统中,虽然有一配套的图文编辑系统SuperStar(SPT),它产生的图形文件也只能在该系统中才能看到。因此,笔者用C语言编了一段程序,可以使读者在西文DOS下直接看到图像。
该程序可被编译成EXE文件,在西文状态下运行。运行时选择文件类型并输入文件名,即可在任何显示器上看到向慕已久的画面。但不同的显示器效果有明显的差异。
本程序所调用的图像文件分为两类,一是指适于在中低分辨率显示器上显示的单幅静态图片、写真,它成批存在于游戏或演示程序中,文件名是排序的,本文称为HTX类;二是在SPT系统中以非压缩形式存盘的文件,通称SPT类。
在某些汉字系统下也可以运行本程序,如WMDOS 6.0、UCDOS 3.1、SPDOS 6.0F均可显示。
程序用Turbo C 2.0编译,在HERC(大力神)单显上运行成功。值得注意的是,运行时,当前目录下需有相应的图形驱动文件(BGI文件)。
#include<dos.h>
#include<stdio.h>
#include<malloc.h>
#include<graphics.h>
main()
{
FILE *fp;
void far *htxwj;
int gd=DETECT, gm, x=0, y=0, q=15, b=0, fx;
long size;
char file[80];
printf("1.HTX 2.SPT:"); scanf ("%d", &fx);
printf("File name:"); scanf ("%s", &file);
if(fx==2){putspt (file, x, y, q, b);closegraph();exit(0)
;}
if(fx==1) goto xshtx;
getch();exit(0);
xshtx:
initgraph(&gd, &gm, "");
size=imagesize (0, 0, 500, 300);
htwxj=malloc(size);
getimage(0, 0, 500, 300, htxwj);
fp=fopen(file, "rb+");
fread(htxwj, 1, size, fp);
putimage (y, x, htxwj, 0);
getch();
free(htxwj);
fclose(fp);
closegraph();
}
putspt(char *sptf, int x1, int y1, int qj, int bj)
{
unsigned char dot;
FILE *fp;
int gd=DETECT, gm;
int h, w;
int i, j, k, p, x, y;
initgraph(&gd, &gm,"");
if ((fp=fopen(sptf, "rb"))==NULL)return(1);
fseek(fp, 34L, SEEK-SET);
fread(&w, 2, 1, fp);
fseek(fp, 36L, SEEK-SET);
fread(&h, 2, 1, fp);
if(fseek(fp, 64L, SEEK-SET))return(1);
for(i=0; i<h; i++)
{
if(i>h)goto extt;
y=y1+i;
for(j=0; j<w/8; j++)
{
x=x1+8*j;
dot=fgetc(fp);
p=0x80;
if(x==(w-15))goto con;
for(k=0; k<8; k++)
{
if(dot&p)
{
putpixel(x+k, y, qj);
}
else
{
putpixel (x+k, y, bj);
}
p>>=1;
}
}con∶;
}
extt:
fclose(fp);
return(0);
}
 

作者:胡颖卓 


相关文章

相关软件