Automator快速操作以将图像保存到同一文件夹

时间:2019-04-09 12:52:36

标签: macos pdf applescript jpeg automator

我正在尝试执行Automator Quick操作(Mac OS),该操作会将pdf页面的图像保存到pdf所在的文件夹中。我发现将文件保存到特定文件夹很容易。例如,下面的工作流程将图像从pdf保存到桌面: enter image description here

最困难的部分是保存到pdf所在的文件夹中。我尝试改编this answer,但得到:“重命名查找器项:名称单个项”遇到错误:“多个查找器项传递给名称单个项”。我不知道如何解决这个问题-我的全部任务是从.pdf输出多个图像。

the stackoverflow page I mentioned above上实际上显示了2个工作流程。我尝试调整它们两个,但它们都给出了相同的错误。以下是我的适应之一。 “获取指定的查找器项目”操作仅用于测试目的。 enter image description here enter image description here

3 个答案:

答案 0 :(得分:0)

这有点令人费解,因为Automator没有默认的操作来获取名称或路径(这是我今天的第一个操作),因此在将项目转换为变量时,您需要进行一些调整,并且工作流将多个输入项作为一个批次处理。

重命名查找器项操作只会重命名(您需要使用进行顺序选项,而不是命名单个项),但是并没有多大帮助,尤其是因为将PDF页面作为图像呈现操作还在其输出中使用了序号。

对于具有相同父文件夹的项目(否则,需要使用第三方操作单独处理这些项目),可以使用 Run AppleScript 操作(如您的链接示例中)来获取要在变量中使用的父文件夹,因此您的工作流程将类似于:

  • 工作流在任何应用程序中接收PDF文件
  • 设置变量{的变量值: input }
  • 运行AppleScript:

    on run {input, parameters}
      tell application "Finder" to return (container of first item of input) as alias
    end run
    
  • 设置变量{变量:文件夹}
  • 的值
  • 获取变量{变量: input }的值(忽略输入)
  • 将PDF页面呈现为图像
  • 复制查找器项目{收件人:文件夹}(选择或拖动文件夹变量到组合框字段)

答案 1 :(得分:-1)

我找到了一种对我有用的方法。

  • 工作流在任何应用程序中接收PDF文件
  • 设置变量{Variable:InputPDFs}的值
  • 运行AppleScript:

    on run {InputPDFs, parameters}
        tell application "Finder" to return (container of first item of InputPDFs) as alias
    end run
    
  • 设置变量{Variable:PathToPDFs}的值

  • 获取变量{Variable:InputPDFs}的值(忽略输入)
  • 将PDF页面呈现为图像
  • 设置变量{Variable:InputPDFs}的值
  • 获取变量{Variable:InputPDFs}的值(忽略输入)
  • 重命名Finder项:按顺序进行
  • 设置变量{Variable:InputPDFs}的值
  • 移动查找器项{To:PathToPDFs}

答案 2 :(得分:-1)

屏幕快照中的以下解决方案在Catalina(10.15.7)中可以正常工作。

  1. 它提示您选择输入的PDF(您可以用首选的输入法替换它)。
  2. 它存储包含输入文件名的完整路径(“ PDF文件”),不包含输入文件名的完整路径(“ pdfPath”)和不带路径和扩展名的基本输入文件名(“ pdf名称”) )。
  3. 将PDF呈现为图像
  4. 将每个图像重命名为pdf-name-***(注意:如果跳过重命名或使用“在现有项目名称中添加编号”,最终将以“将PDF渲染为图像”小部件添加自动索引功能,不是从01开始,而是页数+ 1,例如66、67、68等,如果您的pdf有65页)。
  5. 将图像保存到原始输入文件夹(所选PDF所在的文件夹)。

enter image description here