我试图自动化使用JavaScript自动化Keynote中创建和幻灯片母版的检查。如何使用JavaScript创建或编辑Keynote主幻灯片以实现自动化?
创建幻灯片母版
可以很容易地创建一个新文档与给定的主题,特别幻灯片母版,将其添加幻灯片。
// Create a new document using the "White" theme.
var Keynote = Application('Keynote');
var doc = Keynote.Document({
documentTheme: Keynote.themes['White']
});
Keynote.documents.push(doc);
// Create and append a new "Title & Bullets" slide.
var slide = Keynote.Slide({
baseSlide: doc.masterSlides['Title & Bullets']
});
doc.slides.push(slide);
这将创建与“白”为主题的新文档,插入新的“标题&子弹”幻灯片。
类似的方法不适用于幻灯片母版工作。
// Create a new document using the "White" theme.
var Keynote = Application('Keynote');
var doc = Keynote.Document({
documentTheme: Keynote.themes['White']
});
Keynote.documents.push(doc);
// Create and append a new master slide.
var slide = Keynote.MasterSlide({
name: "Testing"
});
doc.masterSlides.push(slide);
这将创建一个新文档,但不会创建新的主幻灯片。综观脚本编辑器Replies
窗口,所述push
相反返回null
到推一个新Slide
到doc.slides
返回2(在阵列中的幻灯片的数量)。
它是复制主幻灯片,但只有当Keynote处于“编辑主幻灯片”模式时才有可能。如果点击了“Edit Master Slide”按钮,则可以复制主幻灯片。
var Keynote = Application('Keynote');
var doc = Keynote.documents[0];
var ms = doc.masterSlides['Title & Bullets'];
ms.duplicate();
这将创建一个名为“标题&子弹复制”一个新的幻灯片母版。
检查幻灯片母版性能
检查幻灯片母版也有类似,但略有不同的问题。以下代码应在打开文档的“标题&项目符号”主幻灯片上记录标题项目的位置,宽度和高度。
var Keynote = Application('Keynote');
var doc = Keynote.documents[0];
var ms = doc.masterSlides['Title & Bullets'];
var title = ms.defaultTitleItem();
var pos = title.position();
console.log("(x,y) = (" + pos.x + "," + pos.y + ")");
console.log("width x height = " + title.width() + " x " + title.height());
当运行时任一的“编辑母版幻灯片”模式之外,或“编辑母版幻灯片”模式,但与所选择的不同的主滑动,此代码写入
/* (x,y) = (0,0) */
/* width x height = 0 x 0 */
到日志中。相反,当在“编辑母版幻灯片”模式下选择“标题&项目符号”主幻灯片时,将记录正确的值。
/* (x,y) = (75,35) */
/* width x height = 874 x 170 */
问题
什么是适当的方法来创建幻灯片母版,检查其属性,并最终改变了他们?
这是一个很好的建议。我会试试看。 –