2

如何使用 AppleScript 从 PDF 文件中提取 JPEG 图像?有没有这样的命令saveJpegFromPage(PDFstream, numberOfPage)

4

1 回答 1

13

简短的回答:你没有直接使用 AppleScript(因为没有这样的命令)——但你可以通过使用 AppleScript 中的poppler shell 实用程序包来回避这个问题。

长答案: AppleScript 的默认功能(由Standard Additions定义)和操作系统提供的字典及其包含的应用程序不包括 PDF 处理。很明显,OS X 自己的 PDF 应用程序Preview.app在其存在的大部分时间里甚至都无法编写脚本。

至于第三方应用程序,Adobe 的Acrobat X Pro可能可以做到这一点(我无法检查,因为价格标签对我来说太高了,而且没有 OS X 的试用版),但最好的两个已知负担得起的可编写脚本的第三方 PDF 应用程序,SkimPDFPen,AS 字典都不包含用于处理 PDF 文件中的图像的命令。

但是,通常情况下,shell 提供了一种替代方法。xpdf包包含一个名为的实用程序,pdfimages它将完成您的工作。命令

pdfimages -j -f 1 -l 1 "/path/to/my file.pdf" "/path/to/folder for images"

会将第 1 页上的所有图像以 JPEG 格式保存/path/to/my file.pdf到文件夹中(请参阅所有选项的说明)。请注意,这取自poppler的手册页,它是原始xpdf的演变。安装poppler的最佳选择可能是自制软件包管理器( )。/path/to/folder for imagesman pdfimagespdfimagesbrew install poppler

一旦你在系统上安装了这个包,你所要做的就是在 AppleScript 中使用它的能力,将它包装在一个do shell script命令中,沿着

do shell script "'path/to/pdfimages' -j -f " & pageNum & " -l " & pageNum & " '" & (POSIX path of myPDF) & "' '" & (POSIX path of targetFolder) & "'"

你应该被设置。

于 2012-05-07T15:28:08.837 回答