我正在构建一个Delphi应用程序,该应用程序打开图像及其元数据并打印它。对于Windows版本,我构建了一个表单来生成PrintPreview,但在Mac中,我可以使用打印对话框的"在预览中打开PDF"。当我点击它时,会生成一个PDF文件,我可以看到它,这没问题。问题是我想直接从按钮访问这个选项,所以当点击按钮时,预览中的PDF就会打开,用户不必打开打印对话框,然后点击"PDF",然后选择"在预览中打开PDF"。我该怎么做?
我读过关于使用Automator、苹果脚本等的文章,但仍然找不到。有没有这个生成的PDF预览存储的路径,所以也许我可以从那里打开它?。。。
TIA
可能重复使用Automator或Applescript或两者将文档递归打印为PDF,但我无论如何都会回答。
要直接回答您的问题,请参阅我链接的问题。基本上,您需要使用appdescription中的系统事件来完成
然而,使用/usr/sbin/cupsfilter
有一个更快的解决方案。查看手册页了解更多信息。
您可以调用cupsfilter <an-image-file>
,并通过OSX的打印守护进程在stdout上获得PDF。它看起来很可配置,但我不久前才知道。
如果你想为用户打开它,你可以把它保存在一个好的地方,或者你可以用一次性的方式打开它,然后用cupsfilter <your-image> | open -f -a "Preview"
打开PDF。