在使用 Linux 客户端连接 Windows SMB/CIFS 文件共享服务器时,我有时发现自己必须使用 Linux 下没有可用驱动程序的打印机进行打印。
由于某种原因,Windows 计算机希望以已处理过的格式发送作业,因此它可以以其自己的奇怪的语言直接输入到打印机。
如果我能将打印作业以 Postscript 或其他标准格式发送到共享此打印机的 Windows 计算机,然后可以在 Windows 下处理此 PS,那就太好了。
有办法实现这个吗?因为我好像没找到这个选项。
多谢。
答案1
您可以设置 Windows 文件/打印服务器以接受来自非 Windows(甚至 Windows)客户端的 PostScript(或 PDF),并在传递之前将传入的文件转换为本机打印机格式。
你需要做三件事:
- 安装Ghostscript(1)在Windows系统上;
- 设置使用 Ghostscripts 的打印队列mswinpr2(2)设备;
使用RedMon 软件(3)作为端口监视器(4)对于该队列(如何(5))。
[1]:
http://ghostscript.com/releases/
[2]:http://svn.ghostscript.com/ghostscript/trunk/gs/doc/Devices.htm#Win
[3]:ftp://mirror.cs.wisc.edu/pub/mirrors/ghost/ghostgum/redmon17.zip
[4]:http://pages.cs.wisc.edu/~ghost/redmon/
[5]:http://pages.cs.wisc.edu/~ghost/redmon/en/redmon.htm
更新:
刚刚发现这里有包含大量截图的指南:
虽然这涵盖苹果客户端使用模拟 PostScript 设备的 Windows 打印服务器,其大多数指令都以 1:1 的形式适用于您的用例(Linux 客户端)。
答案2
如果连接到打印服务器的打印机可以处理 postscript 文件,则 Windows Server 可以设置 LPR 网关。如果 Windows 服务器允许这样做,则您的本地 Linux 打印应该能够使用它。不幸的是,如果打印机本身不能处理 postscript,您仍然需要一个 Linux 本地驱动程序。