设为首页
联系站长
加入收藏

  格言小语:

励志歌曲版

您现在的位置: 主页 >> 论文 >> 理工论文 >> 计算机论文
  欢迎阅读:静态图像的直接显示
静态图像的直接显示
日期:2006-4-7 15:26:44 来源:论文大全 查看:[ ] 作者:未知  点击:

  该程序可被编译成EXE文件,在西文状态下运行。运行时选择文件类型并输入文件名,即可在任何显示器上看到向慕已久的画面。但不同的显示器效果有明显的差异。

  本程序所调用的图像文件分为两类,一是指适于在中低分辨率显示器上显示的单幅静态图片、写真,它成批存在于游戏或演示程序中,文件名是排序的,本文称为HTX类;二是在SPT系统中以非压缩形式存盘的文件,通称SPT类。

  在某些汉字系统下也可以运行本程序,如WMDOS 6.0、UCDOS 3.1、SPDOS 6.0F均可显示。

  程序用Turbo C 2.0编译,在HERC(大力神)单显上运行成功。值得注意的是,运行时,当前目录下需有相应的图形驱动文件(BGI文件)。

  #include

  #include

  #include

  #include

  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
  {

  if(i>h)goto extt;

  y=y1+i;

  for(j=0; 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);

  }

  

  作者:胡颖卓

 感谢阅读:静态图像的直接显示

收藏本页 关闭窗口 返回顶部

·也谈硬盘参数测试t2gg
·彩色图象的二维变形
·VGA色彩编辑技术
·文本方式下图形提示界面制作
·NetWare与UNIX的互联方法与实现
·Windows NT中的登记项及其完整性
·用C语言实现按钮新技术
·可移植的256色图形用户界面的设计
·深入CD-ROM编程
·STRATEGIES FOR WEB B

本栏热门文章

湘ICP备05012498号 

Powered By: CD520.Net