首页 教育论文中心 论文分类 论文搜索 论文发表 汇款确认 会员专区 在线购卡 服务帮助 联系我们 网站地图
当前位置:教育论文中心首页--计算机论文下载--静态图像的直接显示
推荐论文
·浅谈数学课程的设计
·谈青少年网络道德观的培养
·构建新型师生关系 提高教
·发挥学生的主体作用,建立
·强化师德建设 提高育人水
·师德教育的问题与对策
·不断深化 不断创新努力开

·加强学校德育,提高德育实
·网上德育初探
·评价指标体系《师范生品德
科目列表
市场营销 管理理论 人力资源
电子商务 社会实践 先进教育
伦理道德 艺术理论 环境保护
农村研究 交通相关 烟草论文
电子电气 财务分析 融资决策
电影艺术 国学论文 材料工程
语文论文 数学论文 英语论文
政治论文 物理论文 化学论文
生物论文 美术论文 历史论文
地理论文 信息技术 班主任
音乐论文 体育论文 劳技论文
自然论文 德育管理 农村教育
素质教育 三个代表 旅游管理
国际贸易 哲学论文 工商管理
证券金融 社会学 审计论文
会计论文 建筑论文 电力论文
水利论文 园林景观 农林学
中医学 西医学 心理学
公安论文 法学法律 思想汇报
法律文书 总结报告 演讲稿
物业管理 经济学 论文指导
计算机 护理论文 社会调查
军事论文 化工论文 财政税收
保险论文 物流论文 语言教育
教育教学 给水排水 暖通论文
结构论文 综合类别  

 
静态图像的直接显示

在很多游戏中,有大量的论文下载图像文件,一般只能在游戏过程中看到,有的论文下载还需过关斩将才能看到,而且不易看到全部图像。在金山汉字系统中,虽然有一配套的图文编辑系统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);
}
 
<<<<<全文未完>>>>> 全文字数约348字
是否要阅读全文?点卡会员将扣除1点!点击阅读全文
 
 
 
版权所有 教育论文中心 Copyright(C) All Rights Reserved
联系方式: QQ:277865656
或写信给我