在应用程序上删除文件夹:排序内容:制作MOV

时间:2015-09-25 20:11:46

标签: applescript

这是我想要完成的事情:

项目1.将包含多个图像序列的文件夹拖放到小程序

firstImageSeq0001.png
firstImageSeq0002.png
firstImageSeq0003.png
secondImageSeq0001.png
secondImageSeq0002.png
secondImageSeq0003.png
thirdImageSeq0001.png
thirdImageSeq0002.png
thirdImageSeq0001.png

项目2.获取文件夹中的每组序列并进入quicktime mov

我目前使用的脚本允许我删除applet上的文件夹,然后使用第一组图像创建一个电影。如何让它继续下一组图像?

on open collection

    tell application "Finder" to set theSequence to first item of folder collection as alias

    tell application "QuickTime Player 7"
        activate
        open image sequence theSequence frames per second 30

        set nameSequence to (theSequence as string) & ".mov"

        tell document 1
            with timeout of 500 seconds
                save self contained in nameSequence
            end timeout

        end tell
    end tell

end open

2 个答案:

答案 0 :(得分:1)

最简单的方法是继续处理第一项,但一旦处理完毕,删除所有具有相同根名称的文件并再次运行。下面的剧本就是这样做的。

您必须根据文件名定义lastDigitsCount。例如,对于FirstimageSeq0001.png,lastDigitsCount应该至少为8,这意味着'0001.png'被排除在序列的根名称之外。

textFieldDidBeginEditing

答案 1 :(得分:0)

我有各种各样的例程。这是伪代码。如果我有时间,我会添加更多具体的东西(除非你发现这是一个足够好的跳跃点): (“basename”在这里表示数字前的文件名文本)

for every file:

get the basename --(this would be a call to a subroutine ["handler" in AS parlance])
if first run, do movie, & don't
 check for basename existing already
 [else, do check for existing basename]
if it doesn't exist (within list of basenames),
 do movie