首页 > 解决方案 > Automator 快速操作将图像保存到同一文件夹中

问题描述

我正在尝试制作一个 Automator 快速操作 (Mac OS),它将 pdf 页面中的图像保存到 pdf所在的同一文件夹中

**编辑:user3439894 写道,我应该并且没有完全清楚我想要“将多个文件从不同文件夹发送到快速操作,并在文件所在的每个文件夹中创建文件”

我发现将文件保存到特定文件夹很容易;例如,这是一个将图像从 pdf 保存到桌面的工作流程: 在此处输入图像描述

困难的部分是保存到 pdf 所在的同一文件夹中。我试图调整这个答案,但我得到:“重命名 Finder 项目:命名单个项目”遇到错误:“多个 Finder 项目已传递给命名单个项目”。我不知道如何解决这个问题——我的任务的重点是从 .pdf 输出多个图像。

我上面提到的 stackoverflow 页面上实际上显示了 2 个工作流。我尝试调整它们,它们都给出了相同的错误。下面是我的改编之一。“获取指定的查找器项目”操作仅用于测试目的。 在此处输入图像描述 在此处输入图像描述

标签: macospdfapplescriptjpegautomator

解决方案


这有点令人费解,因为 Automator 没有用于获取名称或路径的默认操作(这是我当天的第一个操作之一),您需要在将项目放入变量和工作流程时进行洗牌将多个输入项作为一个批次处理。

Rename Finder Items操作只会重命名(您需要使用Make Sequential选项而不是Name Single Item),但这并没有多大帮助,特别是因为Render PDF Pages as Images操作也在其输出中使用序列号。

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

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

    on run {input, parameters}
      tell application "Finder" to return (container of first item of input) as alias
    end run
    
  • 设置变量的值 { 变量:文件夹}
  • 获取变量的值{变量:输入}(忽略输入)
  • 将 PDF 页面渲染为图像
  • Copy Finder Items { To: folder }(选择或拖动文件夹变量到组合框字段)

推荐阅读