Adobe Reader 在打印到 CUPS 时似乎使用了错误的 lpr 命令

Adobe Reader 在打印到 CUPS 时似乎使用了错误的 lpr 命令

在我的 debian lenny box 上,通过 CUPS 打印可以正常工作,例如使用 OpenOffice。

但是,从 Adob​​e Reader 打印时,一切不起作用。问题似乎发生在该过程的第一步,即 Adob​​e Reader 与 lpr 对话时。我猜这是原因,因为我从 Adob​​e Reader 收到一条错误消息,如下所示:

打印时出现以下错误...

‘用法:lpr [-cdfghlmnpqrstv] [-#num] [-1234 字体] [-C 类别] [-i [列数]] [-J 作业] [-Pprinter] [-T 标题] [-U 用户] [-wnum] [名称 ...]’

看起来 lpr 对 Adob​​e Reader 与其对话的方式有所不满,不是吗?

不管我打印到激光打印机还是 CUPS-PDF,都会发生这种情况。似乎 Adob​​e Reader 发送了如下命令

lpr -P CUPS-PDF -o PageSizeA4 -o blah -o blah

在 debian 的这个特定安装中,Adobe Reader(acroread 包)显然假定有一个比已安装的 lpr 更新的 lpr,并使用 -o 将选项发送到 lpr。

较新版本的 lpr 可能使用 [ -o 选项[=值] ];根据其手册页,我的旧版本不允许使用 -o。

使用 aptitude 进行一些额外的调查显示 lpr 被标记为已安装。man lpr告诉我这个 lpr 是 BSD 打印后台处理程序。在另一个没有这个问题的机器上,lpr 没有作为单独的包安装。但是,我可以从命令行调用 lpr 并man lpr显示一个有效的手册页,告诉我我有一个 Apple 提供的 lpr 版本。Apple 编写的这个 lpr 来自哪里?我需要安装什么软件包才能使用此特定版本的 lpr?

答案1

  • 删除 lpr (和 lprng)。如果遇到通过 传递的选项,独立版本的 lpr 将会发出警告-o

  • 安装 cups-bsd。这将带来一个 lpr 版本,该版本可以接受-oacroread 使用的内容和其他常用参数。(cups-bsd 与 lpr 或 lprng 冲突)。

  • 仔细查看并发现 acroread 推荐 cups-bsd。

注:部分相关细节也可参见这个问题

相关内容