在我的应用程序中将数据保存到Postscript会生成一个Postscript文件,我可以在GhostView中查看而没有问题,但是当我尝试打印它时,打印机无法打印它,因为它似乎无效.
有没有办法在Postscript文件中验证/查找错误而不实际将其发送到打印机?首选的是某种Java API /库,但执行相同操作的程序也可以.
编辑#1:不,我不知道为什么它是无效的,甚至不一定是无效的,但是希望能够在ghostview之外验证它,或者弄清楚当它无法打印时会发生什么.
答:使用ps2ps技巧,我能够看到Postscript的输出,并检查差异.不同之处在于我不允许在Postscript中为图像的宽度或高度设置十进制数,而只允许使用整数.所以我仍然没有找到验证的方法,但这种方式对我的问题来说已经足够了.谢谢.
每当我需要使用Ghostscript验证PostScript文件而不必实际查看其渲染的页面图像时,我使用"nullpage"设备:
gswin32c ^ -sDEVICE=nullpage ^ -dNOPAUSE ^ -dBATCH ^ c:/path/to/file/to/be/validated.pdf-or-ps ^ 1>validated.stdout ^ 2>validated.stderr
如果出现问题,将会有一个非零%errorlevel%
集,validated.stderr
日志文件将包含Ghostscript在渲染过程中吐出的所有消息.