微信公众号 
图码生活

每天发布有五花八门的文章,各种有趣的知识等,期待您的订阅与参与
电脑报 1992-2001 十年文章全集
电脑报 1992-2001 十年文章全集
包含从 1992 年 - 2001 年间,两万余篇期刊文章,查询最少输入两个字符
随便看看
读取中
读取中
标题充分利用CR3240打印机硬字库及应注意的问题
栏目网络与通讯
作者郑实 王力尧
发布1994-01-07
  为此充分利用CR3240的硬字库取代目前广为流行的“软汉字”方案无疑是合理利用计算机硬件资源的最佳选择。我们知道,计算机所装配的“软汉字”方案是将汉字操作系统CCDOS拷贝到硬盘上,其中CCDOS汉字库分为显示字库和打印字库,通常打印字库是很庞大的,它占用了大量的硬盘空间,而且输出汉字时需向打印机输送要输出汉字的打印点阵。这样就需频繁读取硬盘,既影响了计算机的寿命又降低了打印机输出汉字的速度。利用CR3240打印机的硬字库就是在硬盘上只装载CCDOS的显示字库,不装载打印字库。充分利用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等也可参照此法。这样就使带硬字库的打印机大有用武之地了。