查找字库 辽宁 张 强 1993-07-16 现在通用的2.13E字库,共计87区,每区94个汉字或图形符号。首先应在我们的头脑中形成一个从左上角到右下角一个字盘,认定字盘的横行为区,列为位,对每一个字符或汉字,区和位固定了,这个字符也相应的确定下来,这就是区位码。例如:16区第一位置,即1601是汉字“啊”字,“啊”字是字库中第一个汉字。在本字库中,从16区到87区排列着汉字,1区至13区分别存放各种符号、数字编号、英、日、俄语字母和上标下标变量等。 计算机内字库打印和浏览程序,由三个部分组成:(1)屏幕选择菜单部分,从20句到110句;(2)浏览字库部分,从120句到250句;(3)打印字库部分从260句到380句。在本程序中所采用的变量:(1)“TT”是选择控制符;(2)“HH”和“KK”是打印时所控制的从“HH”区开始打印,打印到“KK”区结束;(3)“Q”控制着打印和浏览区号;(4)“W”控制着打印和浏览的位号。在打印和浏览执行过程中,区号和位号形成区位码,在FOR语句的支持下完成连续的输出任务。 需要说明的两点:(1)在用区位码调用字符或符号时,若区号或位号小于10时,则需要用0占位,例如6区第4位,用0604码输出“△”符号;(2)本程序输出时,我只列出1~40位号,其第二、三行输出的相应位号需自行计算得到,例如:“今”字,是在29区81列,即2981就是“今”字。 10 REM 计算机机内字库打印和浏览应用程序 20 CLS:SCREEN 1:LOCATE 1,8:PRINT"欢迎您使用本程序" 30 TT=0 40 LOCATE 3,7:PRINT"1----浏览" 50 LOCATE 4,7:PRINT "2----打印" 60 LOCATE 5,7:PRINT "3----退出" 70 LOCATE 7,7:INPUT "请选择1----3";TT 80 IF TT=3 GOTO 390 90 IF TT=2 THEN LOCATE 8,7:INPUT"您从第几区开始打印"; HH:LOCATE 9,6:INPUT"打印到第几区";KK:SCREEN 2:GOTO 260 100 IF KK>87 THEN KK=87 110 IF TT=1 THEN DD$=B$:HH=1:KK=87:SCREEN2 120 CLS 130 FOR Q=1 TO 87 140 PRINT 150 PRINT TAB(40)Q;"区汉字" 160 FOR T=1 TO 40 170 PRINT CHR$(&HA0+11)+CHR$(&HA0+T); 180 NEXT T 190 PRINT 200 FOR W=1 TO 94 210 PRINT CHR$(&HAO+Q)+CHR$(&HA0+W); 220 IF W=40OR W=80 THEN PRINT 230 NEXT W 240 NEXT Q 250 GOTO 20 260 FOR Q=HH TO KK 270 LPRINT TAB(40)Q;"区汉字" 280 FOR T=1 TO 40 290 LPRINTCHR$(&HA0+11)+CHR$(HA0+T); 300 NEXT T 310 LPRINT 320 FOR W=1 TO 94 330 LPRIN TCHR$(&HA0+Q)+CHR$(&HA0+W); 340 IF W=40 OR W=80 THE NLPRINT 350 NEXT W 360 KLPRIN"" 370 NEXT Q 380 GOTO 20 390 SCREEN2:END