| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY 
共有 111 人关注过本帖
标题:[求助]带字库点阵显示汉字
收藏  订阅  推荐  打印 
Karl168
Rank: 2
等级:注册会员
帖子:61
积分:762
注册:2007-9-23
[求助]带字库点阵显示汉字

我想学如何在DOS下显示汉字,最近在网上找到了一个例子,不但看得有点吃力,运行还出错.
求哪位大侠帮看一下.以下显红色的是我的问题以疑惑之处.
#include<stdio.h>
#include<graphics.h>
void hanzi16(int x,int y,char *s,int colour)
{
FILE *fp;
char buffer[32];
register i,j,k;
unsigned char qh,wh;/*代表什么,看不懂啊*/
unsigned long location;
if((fp=fopen("hzk16","rb"))==NULL)
{
printf("can't open hzk16");
getch();
exit(0);
}
while(*s)
{
qh=*s-0xa0;
wh=*(s+1)-0xa0;
location=(94*(qh-1)+(wh-1))*32L;/*qh=*s-0xa0是什么意思?wh=*(s+1)-0xa0又是什么?location是要算什么的*/

fseed(fp,location,SEEK_SET);
freed(buffer,32,1,fp);
for(i=0;i<16;i++)
for(j=0;j<2;j++)
for(k=0;k<8;k++)
if(((buffer[i*2+j]>>(7-k))&0x1)!=NULL)
putpixel(x+8*j+k,y+I,colour);
s+=2;
x+=16;
}
fclose(fp);
}
main()
{
int gd=DETECT,gm;
initgraph(&gd,&gm,"");
hanzi16(246,200,"续创中山",BROWN);
getch();
closegraph();
}
搜索更多相关主题的帖子: 字库  点阵  汉字  int  
2007-9-30 19:14
Karl168
Rank: 2
等级:注册会员
帖子:61
积分:762
注册:2007-9-23

没有高人指点吗?
2007-10-4 18:04
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.051205 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved