通过JXA(JavaScript for Automation)在Adobe Illustrator中创建一个新路径项目
我正在寻找一种在Adobe Illustrator中使用JXA(JavaScript for Automation)创建路径项的方法。我多次搜索了整个互联网,找不到任何东西......苹果开发人员网站上只介绍了JXA的基本信息:JavaScript for Automation Release Notes (10.10) Adobe根本没有涉及到这个主题。 这里是我的代码,我就开始想一个椭圆添加到现有的文档:通过JXA(JavaScript for Automation)在Adobe Illustrator中创建一个新路径项目
illuApp = Application('Illustrator')
docPath = "/Users/userOne/Desktop/Document_One.ai"
illuApp.open(docPath)
currentDoc = illuApp.currentDocument
console.log(currentDoc.name())
// Ellipse constructor
newEllipse = illuApp.Ellipse({left: 512.5, top: 87.5, width: 425.0, height: 75.0, reversed: false, inscribed: true})
// This doesn't work **(Error -1700: Can't convert types.)**
currentDoc.pathItems.push(newEllipse)
任何帮助,将不胜感激,谢谢! :)
不要浪费你的时间。就像之前的ScriptingBridge一样,JXA不能正常工作:它会做简单的事情达到某个程度......然后它会对你产生影响;在这一点上,你被拧了。苹果公司从来没有记录过或支持过它,甚至没有构建AS的一小部分观众,所以如果/当苹果推出他们修改后的自动化战略时,我不会感到惊讶的是,它在命中榜上名列第一。 (这是上个自动化项目经理被解雇的原因,我敢说在6月9日以后我们会有更好的想法)。
如果你想使用JavaScript自动化AI,使用它的内置JavaScript(JSX)解释器。否则坚持AppleScript这是唯一正式支持选项,知道如何说话苹果事件正确†。编写非平凡脚本时这一点尤为重要,因为在自动化大型,复杂,陈旧的可编写脚本的应用程序(如Illustrator,Excel,FileMaker等)时,较差的AE桥很可能会用完蒸汽/中断兼容性错误。
†也有py-appscript/SwiftAutomation(这是我用于我自己的高端Illustrator自动化,并全面踢AppleScript的屁股),但经过多年的苹果公司的拧我不再推荐或提供支持,所以你将是你自己的。
谢谢您的回复。这听起来相当清醒...也许6月9日带来一些好消息:) – blauzahn