中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-06 06:38
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [求助]怎样用批处理&&点阵字模来实现彩色大字体? 查看 827 回复 1
楼 主 [求助]怎样用批处理&&点阵字模来实现彩色大字体? 发表于 2007-10-13 14:23 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
前几天看到slore兄回帖的时候用了一个彩色的大字体,见下帖:
http://www.cn-dos.net/forum/viewthread.php?tid=34125&fpage=1&highlight=%E5%A4%A7%E5%AD%97%E4%BD%93

下面是C语言点阵字模的一段示例代码,我看关键部分就是右移位并进行"与"操作来逐位判断是否为1。
请问这里用批处理怎样实现?


void drawmat(char *mat,int matsize,int x,int y,int color)
/*依次:字模指针、点阵大小、起始坐标(x,y)、颜色*/ {
int i, j, k, n;
n = (matsize - 1) / 8 + 1;//2
for(j = 0; j < matsize; j++)
for(i = 0; i < n; i++)
for(k = 0;k < 8; k++)
if(mat & (0x80 >> k)) /*测试为1的位则显示*/
putpixel(x + i * 8 + k, y + j, color);
}

char yi12={
/* 以下是 '1' 的 12点阵宋体 字模,24 byte */
0x00,0x00,0x0C,0x00,0x1C,0x00,0x3C,0x00,
0x0C,0x00,0x0C,0x00,0x0C,0x00,0x0C,0x00,
0x0C,0x00,0x3F,0x00,0x00,0x00,0x00,0x00,
};
2 发表于 2007-10-24 17:29 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
slore兄,呼叫呼叫,你在哪里?
论坛跳转: