|
qb45
高级用户
   
积分 677
发帖 194
注册 2003-9-13
状态 离线
|
『楼 主』:
文本方式下显示汉字的源程序
rem $INCLUDE: 'qb.bi'
CLS
DIM SHARED ax AS INTEGER, bx AS INTEGER, cx AS INTEGER, dx AS INTEGER, es AS INTEGER, bp AS INTEGER
DIM test%(64)
es = VARSEG(test%(32))
DEF SEG = es
FOR i = 1 TO 96
READ t
POKE i, t
NEXT i
DEF SEG
bp = 1
ax = &H1100
bx = &H1000
cx = 6
dx = &HCC
int10
FOR i = 0 TO 5
PRINT CHR$(&HCC + i);
NEXT i
END
DATA 0 , 32 , 19 , 16 , 0 , 7 , 240 , 16 , 17 , 16 , 23 , 16 , 20 , 24 , 16 , 3
DATA 32 , 40 , 252 , 32 , 32 , 254 , 146 , 84 , 16 , 148 , 254 , 32 , 32 , 80 , 140 , 4
DATA 2 , 1 , 63 , 32 , 64 , 31 , 0 , 0 , 1 , 255 , 1 , 1 , 1 , 1 , 5 , 2
DATA 0 , 0 , 252 , 4 , 8 , 224 , 64 , 128 , 4 , 254 , 0 , 0 , 0 , 0 , 0 , 0
DATA 16 , 16 , 35 , 34 , 74 , 251 , 18 , 34 , 67 , 246 , 74 , 3 , 26 , 226 , 66 , 2
DATA 128 , 72 , 252 , 8 , 8 , 248 , 0 , 4 , 254 , 148 , 148 , 252 , 148 , 148 , 148 , 12
SUB int10
DIM InRegs AS RegTypeX
DIM OutRegs AS RegTypeX
InRegs.ax = ax
InRegs.bx = bx
InRegs.cx = cx
InRegs.dx = dx
InRegs.es = es
InRegs.bp = bp
INTERRUPTX &H10, InRegs, OutRegs
ax = OutRegs.ax
bx = OutRegs.bx
cx = OutRegs.cx
dx = OutRegs.dx
es = OutRegs.es
bp = OutRegs.bp
END SUB
|

我(QB45)的照片与简历
http://www.programfan.com/club/showbbs.asp?id=197280
|
|
2003-10-30 00:00 |
|
|
凌晨一点
初级用户
 
积分 255
发帖 54
注册 2003-10-24
状态 离线
|
|
2003-10-30 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27735
发帖 10521
注册 2002-10-9
状态 离线
|
『第
3 楼』:
不知此程序能显示哪些汉字?应该不是所有汉字吧。。
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2003-10-31 00:00 |
|
|
qb45
高级用户
   
积分 677
发帖 194
注册 2003-9-13
状态 离线
|
|
2003-10-31 00:00 |
|
|
Wengier
系统支持
             “新DOS时代”站长
积分 27735
发帖 10521
注册 2002-10-9
状态 离线
|
『第
5 楼』:
那有没有现成的兼容的提取字模的工具呢?
|

Wengier - 新DOS时代
欢迎大家来到我的“新DOS时代”网站,里面有各类DOS软件和资料,地址:
http://wendos.mycool.net/
E-Mail & MSN: wengierwu AT hotmail.com (最近比较忙,有事请联系DOSroot和雨露,谢谢!)
 |
|
2003-10-31 00:00 |
|
|
qb45
高级用户
   
积分 677
发帖 194
注册 2003-9-13
状态 离线
|
『第
6 楼』:
''请不要输入英文字母
OPEN "hzk16" FOR BINARY AS #1
input "请输入要转换的汉字= ",hz1$
hz 100, 100, hz1$, 7
PRINT "字模提取成功ok!!!"
SUB hz (x0, y0, hz.word$, hzcol)
leng = LEN(hz.word$)
now = 1
OPEN "hz.dat" FOR OUTPUT AS #3 ''字模文件名为HZ.DAT
PRINT #3, hz.word$
PRINT #3, "data";
DO
qu = ASC(MID$(hz.word$, now, 1))
now = now + 1
wei = ASC(MID$(hz.word$, now, 1))
now = now + 1
IF qu > 161 AND wei > 161 THEN
ps& = ((qu - 161) * 94& + wei - 161) * 32& + 1
SEEK #1, ps&
zimo$ = INPUT$(32, 1)
num = 1
FOR i = 1 TO 2
FOR y = 0 TO 15
chr1$ = MID$(zimo$, num, 1)
num = num + 1
chr2$ = MID$(zimo$, num, 1)
num = num + 1
chr3$ = chr2$ + chr1$
IF i = 2 THEN chr1$ = chr2$
IF y < 15 THEN PRINT #3, ASC(chr1$); ","; ELSE PRINT #3, ASC(chr1$)
'' LINE (x0, y0 + y)-STEP(15, 0), hzcol, , ASC(chr1$)
NEXT y
num = 1
x0 = x0 + 8
PRINT #3, "data";
NEXT i
END IF
LOOP UNTIL now = leng + 1
END SUB
[此贴子已经被作者于2004-1-8 13:39:37编辑过]
|

我(QB45)的照片与简历
http://www.programfan.com/club/showbbs.asp?id=197280
|
|
2003-11-3 00:00 |
|
|
算了
初级用户
 
积分 109
发帖 2
注册 2003-11-5
状态 离线
|
『第
7 楼』:
你用的是dos下自绘字模的中断吧,为什么要在文本状态下呢?进入图形状态,
把汉字画在屏幕上,能放大缩小,随便定位,灵活很多呀
|
|
2003-12-29 00:00 |
|
|
qb45
高级用户
   
积分 677
发帖 194
注册 2003-9-13
状态 离线
|
|
2003-12-30 00:00 |
|
|
spirit
初级用户
 
积分 111
发帖 5
注册 2003-12-1
状态 离线
|
|
2004-1-8 00:00 |
|
|
jiaking
中级用户
  
积分 223
发帖 52
注册 2004-3-7
状态 离线
|
『第
10 楼』:
编译时提示:type not define,在 DIM InRegs AS RegTypeX 。为什么?
|
|
2004-3-17 00:00 |
|
|
qb45
高级用户
   
积分 677
发帖 194
注册 2003-9-13
状态 离线
|
|
2004-3-19 00:00 |
|
|
@yingyong@
初级用户
 
积分 106
发帖 3
注册 2004-3-21
状态 离线
|
|
2004-3-21 00:00 |
|
|