我正在尝试编写一个JavaScript自动化脚本来记录我的Mac上的屏幕。我发现API在doc.close()
这一行被破坏了。 QuickTime只是挂在那里,最终我的脚本编辑器因超时错误而失败。
var QuickTime = Application("QuickTime Player");
var doc = QuickTime.newScreenRecording();
doc.start();
delay(2);
doc.close();
我最终必须从命令行退出QuickTime,其中包括:
$ killall QuickTime\ Player
然后我再次打开QuickTime找我的视频在那里等我。那么我决定添加参数close方法,现在我的脚本看起来像这样:
var QuickTime = Application("QuickTime Player");
var doc = QuickTime.newScreenRecording();
doc.start();
delay(2);
doc.close("yes",Path("/Users/myuser/Desktop/movie.mov"));
QuickTime.quit();
Result:
Error -2700: Script too silly to execute.
Error on line 5: Error: Named parameters must be passed as an object.
我没有看到足够的文档来完全理解我在这里被问到什么时候。编写此脚本以捕获屏幕录制并将该文档/文件保存到桌面的正确方法是什么?
我想close
希望它的每个参数都带有一个名字。名称 - 参数对可以表示为具有以下语法的对象:
doc.close({saving: 'yes'}, {path: '/Users/myuser/Desktop/movie.mov'});
而不是这个:
doc.close("yes",Path("/Users/myuser/Desktop/movie.mov"));
注:我没有尝试使用QuickTime。如果这不起作用或我错了,请告诉我。