在现有的Applescript / Automator程序中升级Photoshop版本

时间:2016-06-22 19:41:54

标签: applescript photoshop automator

新手在这里。

我在Automator中运行Photo Booth程序。它使用此代码运行photoshop操作:

on run {input, parameters}
   --set theImage to choose file with prompt "Please select an image file:"
   --display alert class of (theImage as alias) buttons {"OK"} as warning

   set theImage to input

   tell application "Adobe Photoshop CS4"
       open file (theImage as text) as Camera RAW showing dialogs never
       do action "OneCopyColourDFS" from "Photobooth" --replace 'name' and 'group' with the correct items from Photoshop; the "group" is the folder the action appears under in Photoshop; capitalization and spacing matter
   end tell

   return input
end run

但是,我已将Photoshop版本更新为CS6。但是,当我改变 -tell application" Adob​​e Photoshop CS4" - 至 -tell application" Adob​​e Photoshop CS 6 " -

...然后运行Automator,它立即切换回' CS4'当它运行Applescript时。为什么?我假设它必须是Automator做某事吗?

提前感谢您的帮助吗?

伦纳德

1 个答案:

答案 0 :(得分:0)

如果我没记错的话,AppleScript脚本会保存对使用别名数据的应用程序的引用,因此定位不同的应用程序版本可能会很棘手。

我会尝试以下方法:

  1. 在Automator中,选择脚本的内容并将其复制到剪贴板。

  2. 打开TextEdit并创建一个新文档。使用Format > Make Plain Text将新文档的格式更改为纯文本。然后粘贴剪贴板的内容,以便获得AppleScript纯文本的备份副本。

  3. 返回Automator并删除Run AppleScript操作的所有文本。保存Automator文档。

  4. 保存Automator文档后,返回TextEdit,选择之前粘贴的所有纯文本,然后将其复制到剪贴板。

  5. 返回Automator并将纯文本粘贴到Run AppleScript操作中。 之前点击编译,请确保已正确设置新名称,即“Adobe Photoshop CS6”。编译时,应该保留Adobe Photoshop CS6而不必恢复到CS4。

  6. 如果这样做,基本上,你正在做的是基本上强制AppleScript(或Automator)丢弃脚本处理的AppleScript对象的所有内部/缓存表示,并通过重新解析来重新创建它们从头开始的文字。