充分利用CR3240打印机硬字库及应注意的问题
那么如何使用CR3240打印机的硬字库呢?CR3240打印机为我们提供了一系列的控制码,包括字符大小和字距命令、纵向位置控制命令、横向位置控制命令、图象控制命令、彩色打印控制命令等。通过调用这些控制码就能使CR3240打印机输出各种各样的汉字的命令字体、字型、比如CR3240设定汉字字体如下:
CODE <ESC> "U" n
DEC 27 117 n
HEX 1B 75 n
说明:根据n的值选择汉字字体
CODE控制码助记符
DEX十进制码表示命令
HEX十六进制码表示命令
n 汉字字体
1 24×24 宋体
2 24×16 宋体
3 24×12 宋体
4 32×32 宋体
5 32×16 宋体
6 40×40 楷体
7 40×40 仿宋体
8 40×40 黑体
我们在汉字操作系统上调用相应的控制码就能实现汉字的打印。
如在汉化FOXBASE中打印24×12点阵的宋体汉字命令为:
SET PRINT ON
PRINT CHR(27)+"u3"
SET PRINT OFF
在BASIC中打印24×12点阵的宋体汉字命令为:
10 LPRINT CHR$(27);"u3";"汉字打印"
但是,笔者发现存在这样一个问题:大多数的ASCII码及汉字都可以被打印,但是空格却不能,也就是说我们从键盘输入的空格符号不能与其它汉字一起处理,从而出现输出的格式(报表)左右不齐,影响了打印机硬字库的使用。笔者认为产生的原因在于CR3240打印机硬字库的控制码是由“汉字”的内码决定的,而在汉字操作系统下,空格符号的内码与“汉字”的内码不一致,为此我采用在空白处不输入空格而输入不显示的汉字符号。如区位码5592、5593等产生空白,这样就能与其它汉字一起被处理,比较圆满地解决了这一问题。
当然使用其它带硬字库的打印机如LQ1600K等也可参照此法。这样就使带硬字库的打印机大有用武之地了。