8.1. 打印文件

8.1.1. 命令行打印

8.1.1.1. 将文件发送到打印机

从应用程序内部打印非常容易,只需从菜单中选择 打印 选项。

在命令行中,使用 lplpr 命令。

lp文件

lpr文件

这些命令可以从管道读取数据,因此您可以使用以下命令打印命令的输出:

命令 | lp

有许多选项可用于调整页面布局、副本数量、要打印到的打印机(如果您有多个可用打印机)、纸张尺寸、单面或双面打印(如果您的打印机支持此功能)、页边距等等。阅读 man 手册以获得完整概述。

8.1.1.2. 您的打印作业状态

一旦文件被打印队列接受,就会为打印作业分配一个识别号

davy:~> lp /etc/profile
request id is blob-253 (1 file(s))

要查看(查询)打印队列,请使用 lpqlpstat 命令。当不带参数输入时,它会显示默认打印队列的内容。

davy:~> lpq
blob is ready and printing
Rank	Owner	Job	File(s)		Total Size
active	davy	253	profile		1024 bytes
davy:~> lpstat
blob-253	davy	1024	Tue 25 Jul 2006 10:20_01 AM CEST

8.1.1.3. 您的打印机状态

在可以访问多台打印机的系统上,哪台是默认打印机?

lpstat-d

davy:~> lpstat -d
system default destination: blob

我的打印机状态是什么?

lpstat-p

davy:~> lpstat -p
printer blob now printing blob-253. enabled since Jan 01 18:01

8.1.1.4. 从打印队列中移除作业

如果您不喜欢从状态命令中看到的内容,请使用 lprmcancel 删除作业。

davy:~> lprm 253

在图形环境中,您可能会看到一个弹出窗口,告知您作业已被取消。

在较大的环境中,可以使用 lpc 来控制多台打印机。请参阅每个命令的 Info 或 man 手册。

有许多 GUI 打印工具用作 lp 的前端,并且大多数图形应用程序都有一个使用 lp 的打印功能。有关更多信息,请参阅内置的帮助功能和程序特定的文档。

Note为什么与打印相关的每个任务都有两个命令?
 

UNIX 和类似系统上的打印有着悠久的历史。过去有两种相当不同的方法:BSD 风格的打印和 SystemV 风格的打印。为了兼容性,带有 CUPS 的 Linux 支持这两种风格的命令。另请注意,lp 的行为不完全像 lprlpq 的选项与 lpstat 有些不同,而 lprm 几乎像 cancel,但不完全相同。您使用哪个并不重要,只需选择您感觉舒适的命令,或者您可能从以前使用类 UNIX 系统的经验中了解到的命令。

8.1.2. 格式化

8.1.2.1. 工具和语言

如果我们想从打印机获得有意义的输出,首先应该格式化文件。除了大量的格式化软件外,Linux 还附带了基本的 UNIX 格式化工具和语言。

现代 Linux 系统支持直接打印多种文件类型,无需用户进行任何格式化:文本、PDF、PostScript 以及多种图像格式,如 PNG、JPEG、BMP 和 GIF。

对于那些确实需要格式化的文件格式,Linux 附带了许多格式化工具,例如 pdf2psfax2psa2ps 命令,它们将其他格式转换为 PostScript。这些命令可以创建文件,然后可以在未安装所有转换工具的其他系统上使用。

除了这些命令行工具外,还有许多图形文字处理程序。有几个完整的办公套件可用,其中许多是免费的。这些套件会在提交打印作业时自动进行格式化。仅举几个例子:OpenOffice.orgKOfficeAbiWordWordPerfect 等。

以下是打印上下文中常用的语言

  • groff:UNIX roff 命令的 GNU 版本。它是 groff 文档格式化系统的前端。通常,它运行 troff 命令和一个适用于所选设备的后处理器。它允许生成 PostScript 文件。

  • TeX 和宏包 LaTeX:UNIX 系统上最广泛使用的标记语言之一。通常以 tex 调用,它格式化文件并输出排版文档的相应设备无关表示。

    技术著作仍然经常用 LaTeX 编写,因为它支持数学公式,尽管 W3C(万维网联盟)正在努力将此功能包含在其他应用程序中。

  • SGML 和 XML:UNIX 和 Linux 都有免费的解析器可用。XML 是下一代 SGML,它构成了 DocBook XML(一种文档系统,例如本书就是用 XML 编写的)的基础。

Tip打印文档
 

man 手册包含预格式化的 troff 数据,这些数据在从打印机输出之前必须进行格式化。打印使用-tman 命令的选项

man-t 命令 > man-命令.ps

然后打印 PostScript 文件。如果为您的系统/帐户配置了默认打印目标,您可以直接发出命令 man -t command,将格式化后的页面直接发送到打印机。

8.1.2.2. 预览格式化文件

通常,您可以将发送到打印机的任何内容也发送到屏幕。根据文件格式,您可以使用以下命令之一

  • PostScript 文件:使用 gv (GhostView) 命令。

  • TeX dvi 文件:使用 xdvi,或 KDE 的 kdvi

  • PDF 文件:xpdfkpdfgpdf 或 Adobe 的查看器 acroread,后者也可免费获得,但不是自由软件。Adobe 的阅读器支持 PDF 1.6,其他阅读器仅支持 PDF 1.5 版本。可以使用 file 命令确定 PDF 文件的版本。

  • 在应用程序中,例如 Firefox 或 OpenOffice,您通常可以从菜单中选择 打印预览