在 Debian 操作系统中,打印默认是以 PostScript 格式进行处理的。对于那些不直接支持 PostScript 的打印机,通用 Unix 打印系统(CUPS)依赖 Ghostscript 来担当其后端的光栅化处理工具。Ghostscript 负责将 PostScript 数据转换成打印机能够理解的格式,确保无论打印机类型如何,用户都能够顺利进行。
在最新版本的 Debian 系统中,打印资料不仅支持 PostScript 格式,还支持 PDF 格式。PDF 文件具有广泛的兼容性,可以通过图形用户界面(GUI)工具进行查看,例如 Evince 和 Okular,以及现代网络浏览器如 Chromium。
PDF 文件的排版内容可以被嵌入到这些 GUI 查看工具中,方便用户阅读和交互。对于需要编辑 PDF 的情况,有多款图像处理工具可供选择,包括但不限于 LibreOffice、Scribus 和 Inkscape,它们均提供了丰富的 PDF 编辑功能。
一、Ghostscript
处理可印刷的数据的核心是 Ghostscript PostScript 解释器,它能够生成光栅图像(raster image)。
Ghostscript PostScript 解释器列表:
软件包 | 流行度 | 大小 | 说明 |
ghostscript | V:159, I:579 | 179 | GPL Ghostscript PostScript/PDF 解释器 |
ghostscript-x | V:2, I:39 | 87 | GPL Ghostscript PostScript/PDF 解释器-X 显示支持 |
libpoppler102 | V:16, I:136 | 4274 | PDF 渲染库 (xpdf PDF 浏览器的分支) |
libpoppler-glib8 | V:274, I:482 | 484 | PDF 渲染库(基于 Glib 的共享库) |
poppler-data | V:126, I:605 | 13086 | 用于 PDF 渲染库的 CMaps (CJK 支持:Adobe-*) |
注意:“gs -h” 能够显示 Ghostscript 的配置信息。
二、合并PS或PDF文件
使用 Ghostscript 中的 gs(1) 能够合并两个 PostScript(PS) 或可移植文档格式(PDF) 文件。
$ gs -q -dNOPAUSE -dBATCH -sDEVICE=pswrite -sOutputFile=bla.ps -f foo1.ps foo2.ps $ gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=bla.pdf -f foo1.pdf foo2.pdf
注意:
- PDF 是用途很广的跨平台可印刷的数据格式,它本质上是带有一些额外特性和扩展的压缩了的 PS 格式;
- 对于命令行来说,psmerge(1) 和 psutils 包中的其他命令在处理 PostScript 文档时是很有用的。pdftk 包中的 pdftk(1) 在处理 PDF 文档的时候同样是很好用的。
三、可印刷数据的工具
如下是处理可印刷数据的工具列表。
处理可印刷数据的工具列表:
软件包 | 流行度 | 大小 | 关键词 | 说明 |
poppler-utils | V:158, I:467 | 717 | pdf→ps,text,… | PDF 工具:pdftops, pdfinfo, pdfimages, pdftotext, pdffonts |
psutils | V:4, I:69 | 219 | ps→ps | PostScript 文件转换工具 |
poster | V:0, I:3 | 57 | ps→ps | 用 PostScript 页制作大型海报 |
enscript | V:1, I:14 | 2130 | text→ps, html, rtf | 转化 ASCII 文本到 PostScript, HTML, RTF 或 Pretty-Print |
a2ps | V:0, I:10 | 3979 | text→ps | 任何文本到 PostScript’ 的转换器并且也是相当不错的打印程序 |
pdftk | I:38 | 28 | pdf→pdf | PDF 文档转换工具:pdftk |
html2ps | V:0, I:2 | 261 | html→ps | 从 HTML 到 PostScript 的转换器 |
gnuhtml2latex | V:0, I:0 | 27 | html→latex | 从 html 到 latex 的转换器 |
latex2rtf | V:0, I:4 | 495 | latex→rtf | 转换 LaTeX 文档到能被 Microsoft Word 读取的 RTF 格式的文档 |
ps2eps | V:2, I:42 | 95 | ps→eps | 从 PostScript 到 EPS(Encapsulated PostScript)的转换器 |
e2ps | V:0, I:0 | 109 | text→ps | 带有日文编码支持的文本到 PostScript 转换器 |
impose+ | V:0, I:0 | 118 | ps→ps | PostScript 工具 |
trueprint | V:0, I:0 | 149 | text→ps | 漂亮的打印许多源程序(C, C++, Java, Pascal, Perl, Pike, Sh, 和 Verilog)到 PostScript。(C 语言) |
pdf2svg | V:0, I:3 | 30 | ps→svg | PDF 到可升级的向量图形格式的转换器 |
pdftoipe | V:0, I:0 | 65 | ps→ipe | 从 PDF 到 IPE‘s XML 格式的转换器 |
四、用CUPS打印
Unix 通用打印系统(CUPS) 中的 lp(1) 和 lpr(1) 命令都提供了自定义打印数据的选项。
你可以使用下列命令中的一个来打印 3 份有装订页码的文件。
$ lp -n 3 -o Collate=True filename $ lpr -#3 -o Collate=True filename
可以通过 “-o number-up=2”, “-o page-set=even”, “-o page-set=odd”, “-o scaling=200”, “-o natural-scaling=200” 等等打印机选项来进一步定制打印机操作。