本节将教您如何打印中文文档,但不演示如何设置打印机;您必须自行完成所有准备工作。本节介绍的工具都是用于转换为 PostScript 格式;因此,您需要设置您的打印机以便打印 PostScript 文件。如果您的打印机不支持直接 PostScript,您可以安装 ghostscript
作为替代方案。请参考 Printing HOWTO。
cnprint
是一个打印工具,旨在将中文文本文件转换为 PostScript 格式,其命令与标准命令相同。它同时支持 GB、HZ 和 BIG5 编码。
从 ftp://ftp.ifcss.org/pub/software/unix/print
下载,文件名为 cnprint280.tar.gz
。
cnprint280.tar.gz
仅包含五个文件。
# ls
cnprint.1 cnprint.cmd cnprint280.README
cnprint.c cnprint.help
通过以下方式编译它
# gcc cnprint.c -o cnprint
# mv cnprint /usr/local/bin
# mv cnprint.1 /usr/local/man/man1
HBF 字体包括描述文件和字体文件。.hbf
是描述字体的头文件,采用纯文本格式,记录了其字体文件的文件名。这两个文件都必须由您自己安装。您可以在 ftp://ftp.ifcss.org/pub/software/fonts/
找到它们。
如果您想使用 ccfs24.hbf
,例如,这是一种仿宋体的简体字体,您必须获取以下三个文件:ccfs24.hbf
、cclib.n24
和 ccsym.24
。在 ifcss 字体目录中,00index.txt
列出了所有 HBF 字体的文件名。建立一个特定的目录来存储 HBF 字体,例如 /usr/local/lib/chinese/HBF/
。将您获得的所有 HBF 描述文件和字体文件放在此目录下,然后导出 HBF 的完整目录路径名到环境变量。
# export HBFPATH="/usr/local/lib/chinese/HBF/"
文件 cnprint.cmd
包含 cnprint
的一些默认值,您必须修复它们以指向您已安装的 HBF 字体,然后将其导出到 $HBFPATH
。
# cp cnprint.cmd $HBFPATH
现在,您可以使用 ``cnprint -w FILENAME
'' 将中文文本文件很好地转换为 PostScript 文件。有关更多详细信息,请查阅 man cnprint
。
cnprint 2.80
增加了很多强大的功能,例如各种代码格式之间的转换,例如,BIG5 <=> GB <=> HZ。对于 BIG5 <=> GB,您需要另一个制表符进行安装,可以从以下站点找到
ftp://ftp.ifcss.org/pub/software/unix/convert/hc.tab将其放在 HBF 的字体目录下,并修改
cnprint.cmd
,添加此项
DEFAULT_GBB5_TABLEFILE: /usr/local/lib/chinese/HBF/hc.tab
不仅如此,对于 BIG5 到 GB 代码的转换,cnprint 2.80
可以完成针对字到字的转换,也可以完成针对词组到词组的工作。但是,cnprint
本身没有提供转换字典,这意味着如果您需要字典,则必须自己创建一个。请参考 man cnprint
获取更多详细信息。
这个小程序的目的在于使 PostScript 文件(原本无法输出中文到输出设备)能够用于中文输出。例如,当 Netscape 打印文件时,它会首先将文件转换为 PostScript 格式;但是,PostScript 的输出不会加载中文字体,因此中文单词的原始部分将变成乱码输出。此程序可以读取 PostScript 输入,并将乱码替换为相应的单词;然后将结果输出到标准输出设备,输出数据可以发送到可以打印 PostScript 文档的打印机。
从这个站点获取 ps2cps
ftp://linux.cis.nctu.edu.tw/packages/chinese/misc/ps2cps-0.1.tgz
解压并解压缩此文件,并根据您的需求修改 Makefile
BINPATH : Installing pathname for binary ps2cps
PS2CPSPATH : Resources files' pathname for PS2CPS
PS2CPSRC : Filename of resources files for PS2CPS
下一步是 make all install
。
您必须首先根据上一节安装 HBF 中文字体,然后修改您的 ps2cpsrc
文件
HBF_PATH: Define the directory pathname of HBF fonts
HBF_NAME: Define filenames of HBF fonts(NOT including pathname)
CH_WORD_SHIFT: Define shift of Chinese fonts
最后一项用于调整中文字体的位置。一些中文字体和原始英文字体可能不在同一水平线上,因此您可以设置此变量,其数值范围从 -1.0 到 +1.0,激活后可以向上或向下调整。因此,您可以使用创始人制作的示例进行一些测试
# ps2cps thhsieh.ps > c-thhsieh.ps
使用 ghostview
查看您是否可以看到中文字符。但是,该程序仍处于 beta 测试阶段,还有许多问题等待解决。如果您有任何问题或建议,可以直接向作者发送消息:Tung-Han Hsieh < thhsieh@twclx.phys.ntu.edu.tw>。
这是另一个程序,可以将基于 BIG5 的中文文件转换为可用于打印的 PostScript(与 cnprint 相同)。但因为它使用 TrueType 字体,所以输出比其他程序更美观。此外,它有一个脚本可以将 Netscape 的 PostScript 输出转换为中文。作者是 Chen-Shan Chin < cschin@u.washington.edu>。
从这个网站获取此软件
http://weber.u.washington.edu/~cschin/bg2ps/
解压缩并编译它
# mkdir bg2ps
# cd bg2ps
# tar xzvf bg5ps.tgz
# gcc -O2 ttf2psm.c -o ttf2psm
下一步安装 TrueType 字体。您可以将其安装在 bg2ps 的同一目录下,也可以指定另一个目录供使用。请参考 安装 TTF 字体 以获得更多解释。然后,在目录下创建一个 .bg5ps.conf
,您可以直接使用该程序附带的示例文件进行修改。最重要的是将您安装 TrueType 字体的目录分配给 chineseFontPath
,并将 fontName
的内容重命名为您使用的字体名称。
测试它附带的示例,并使用 ghostview
或 gv
查看输出。
# ./bg5ps -if test.big5 -of test.ps
# ghostview test.ps
nps2cps 没有额外的配置文件。您需要在 nps2cps
脚本中自行修改 chineseFontPath
和 fontName
。
测试 nps2cps
# nps2cps < netscape.ps > test.ps
# ghostview test.ps
gb2ps 程序是另一个用于打印 GB 和 HZ 编码的工具。
- 软件包
gb2ps.2.02.tar.gz
ftp://ftp.ifcss.org/pub/software/unix/print
- 字体
csong24.ccf ckai24.ccf
cfang24.ccf chei24.ccf
ftp://ftp.ifcss.org/pub/software/fonts/gb/misc/
将字体放在某个自建目录下,例如 /usr/local/lib/chinese/CFONT
。
在编译 gb2ps 之前,更改 Makefile
中的设置。
CFONT=/usr/local/lib/chinese/CFONT/
COVERPAGE=/usr/local/lib/chinese/lib/cover.ps
然后输入这些命令并按回车键,
# make
# cp gb2ps /usr/local/bin