JXA&的OmniGraffle

时间:2015-03-29 09:00:15

标签: javascript applescript osx-yosemite javascript-automation jxa

我无法弄清楚如何将以下AppleScript转换为JXA(Mac OS X Yosemite下的自动化JavaScript):

tell application id "com.omnigroup.OmniGraffle6"
    tell canvas of front window
        make new line at end of graphics with properties {point list:L, draws shadow:false}
    end tell
end tell

这是我尝试的但是在执行最后一行并且错误“AppleEvent处理程序失败”时失败了:

app = Application('OmniGraffle')

pt1 = app.Point({x:1,y:2})
pt2 = app.Point({x:1,y:2})

L = []
L.push(pt1)
L.push(pt2)

line = app.Line({pointList:L})

app.documents[0].canvases[0].lines.push(line)

有人可以帮忙吗?

谢谢, 的Aurelien

2 个答案:

答案 0 :(得分:1)

图形集合中包含图形对象(线条,形状......)。因此,您必须将最后一行更改为

app.documents[0].canvases[0].graphics.push(line)

答案 1 :(得分:0)

还有一个相当但更全面的例子:

.emacs