我正在开发远程打印客户端(本地Win32应用程序)。它仅打印来自服务器的文件。我希望能够在发送数据之前以编程方式检查打印机是否支持Postscript。如何实现?GETTECHNOLOGY转义并没有多大帮助。例如,它返回“PCL XL”用于也支持Postscript的HP打印机。
我认为在Win32 API中没有确切的方法可以确定打印机是否是PostScript打印机,特别是当它接受多种页面描述语言的时候。其中一个原因是,在PostScript中没有切换语言的方法,而在PCL打印机上这是可能的。因此,PCL / PostScript打印机显示为PCL打印机,并允许您通过发送适当的代码切换到PostScript。您尝试过发送POSTSCRIPT_IDENITFY吗?如果驱动程序不支持该操作,则该驱动程序可能不是PostScript驱动程序。很遗憾我无法进行检查。