发信人: justice()
整理人: yangcs(2000-02-14 09:31:38), 站内信件
|
【 在 near125 (离你不远) 的大作中提到: 】
: 我不想用汉字系统支持,请教我如何使用点阵字库.
: 谢谢
我以前用QB写过一个在西文下显示汉字的程序,也供大家参考
DECLARE FUNCTION bin2binstr$ (b%)
'name:HZ demo program
'by :CyberCowBoy
'note:please copy Tway font "HZK16" to runtime directory
DIM a%(16)
DIM bstr1$(16)
DIM bstr$(16)
SCREEN 12
CLS
OPEN "HZK16" FOR BINARY AS #1
FOR offs = 1 TO 500000 STEP 32
'offs = 45120
LOCATE 1, 1
w = INT(offs / 32) MOD 94
q = INT(INT(offs / 32) / 94)
PRINT q, w
SEEK #1, offs
FOR rec = 1 TO 16
GET #1, , a%(rec)
' PRINT HEX$(a%(rec))
NEXT rec
FOR i = 1 TO 16
bstr1$(i) = bin2binstr$(a%(i))
bstr$(i) = RIGHT$(bstr1$(i), 8) + LEFT$(bstr1$(i), 8)
' PRINT bstr$(i)
NEXT i
'INPUT aa
x = 200
FOR i = 1 TO 16
FOR j = 1 TO 16
IF MID$(bstr$(i), j, 1) = "1" THEN
PSET (j + x, i + 60), 2
ELSE
PRESET (j + x, i + 60)
END IF
IF MID$(bstr$(i), j, 1) = "1" THEN
PSET (j + x - 1, i + 59), 13
END IF
NEXT j
NEXT i
'NPUT aa
FOR delay = 1 TO 80000: NEXT delay
CLS
NEXT offs
FUNCTION bin2binstr$ (b%) STATIC
t$ = STRING$(16, "0")
IF b% THEN
IF b% < 0 THEN
MID$(t$, 1, 1) = "1"
END IF
mask% = &H4000
FOR i% = 2 TO 16
IF b% AND mask% THEN
MID$(t$, i%, 1) = "1"
END IF
mask% = mask% / 2
NEXT i%
END IF
bin2binstr$ = t$
END FUNCTION
-- 横眉冷对千夫指,俯首甘为孺子牛
----CyberCowBoy
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.103.160.26]
|
|