一些互联网上的网页以及这里的几个答案StackExchange包含带有选项的 ghostscript 命令-sDEVICE=psmono
。但是当我执行这些命令时,ghostscript 返回错误,抱怨该设备 (psmono) 未知。
下面是我尝试运行的一个示例,它返回1
错误代码:
$ gs -sDEVICE=psmono -dNOPAUSE -dBATCH -dSAFER -sOutputFile=out.ps in.ps
GPL Ghostscript 9.21 (2017-03-16)
Copyright (C) 2017 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Unknown device: psmono
我正在使用 Arch Linux,Ghostscript 的版本是9.21
,这是 ArchLinux 存储库中的最新版本。
我必须安装另一个软件包才能拥有额外的 ghostscript 设备(例如 psmono)?或者这个设备存在于 ghostscript 的先前版本中,但在较新版本中不可用(如果是这样,我psmono
现在如何才能获得这种行为)?或者这是 ArchLinux 软件包制作者没有使用必要的编译选项编译 ghostscripts 造成的错误?
答案1
根据Ghostscript 设备:“列出的许多设备在标准配置中不可用。”
“如果您需要的设备未列出,但出现在下面的列表中,则需要重新编译 Ghostscript。如果您想要的打印机设备未列出,请仔细寻找可能与您的打印机兼容的替代设备。如果其他方法都失败了,您可能必须修改现有设备以适合您的打印机。”
简而言之,如果您需要,Arch Linux(或您)将需要为 psmono 构建。它不是需要安装的附加软件包。
构建 Ghostscript 并不完全简单。以下是一些构建 Ghostscript 的说明如果你选择走那条路。
答案2
PS
代表 Postscript(PDF 文件或多或少就是其内容)
mono
在几个 Ghostscript 命令中用于指示单色输出。
总之,我认为这意味着答案表明该字符串发送单色的 PostScript 输出,而由于问题是关于创建黑白 PDF,所以我相信这个猜测是合理的。
这些命令的可用性可能取决于 Ghostscript 是否能够识别 Postscript 输出设备。
在 Ghostscript 文档中,您会发现运行该-h
命令将列出系统上 Ghostscript 检测到的设备。