【问题标题】:Adobe Illustrator scripting [closed]Adobe Illustrator 脚本[关闭]
【发布时间】:2020-10-08 22:20:23
【问题描述】:

我正在尝试创建一个脚本,它将保存为样本的不同图案添加到一组分组项目中,这些项目是图层的一部分。不幸的是,在查看 Illustrator 脚本指南时,我找不到正确的方法。分组的项目有一个颜色属性,它允许我修改基色,但我找不到任何允许更改模式的属性。

有人可以帮忙吗?

谢谢你, 拉兹万·索多利亚努

【问题讨论】:

  • 感谢您的回复。我正在尝试将模式设置为分组对象。该模式在 Swatches 列表中定义,我正在尝试将其应用于分组项目。那就是我失败的地方。这种方法,如果我理解正确的话,只允许我改变图案的颜色。
  • @VasilyHall 根本不是这样,这个问题需要一些工作才能重新打开。问题是没有足够的信息来理解 OPs 的要求是什么,因此为什么被关闭为“不清楚”。精英主义与此完全无关。

标签: vbscript adobe-illustrator


【解决方案1】:

问题在于,没有办法使用脚本命令从艺术品中添加图案 - 除非有一种使用 javascript 的方式来执行 appExecuteMenuCommand 来定义图案。好吧,我们可以毫无问题地从 VBS 运行这个小 javascript,但是出现了 Pattern 对话框,我们不想这样。因此,只需发送 Escape 键即可退出对话框,您的新图案应该是色板集合中的最新色板!

Set AiApp = CreateObject("Illustrator.Application")
AppName = AiApp.Name
' MsgBox(AppName)
Set Doc = AiApp.ActiveDocument

Set MyGroup = Doc.GroupItems(1)
Doc.Selection = MyGroup

AiApp.DoJavaScript("app.executeMenuCommand('Adobe Make Pattern')")
Set WScriptShell =  CreateObject("WScript.Shell")
WScriptShell.SendKeys("{Escape}")

编辑: 我再次阅读了您的问题,实际上我回答了上述问题。您真正的答案是以下 sn-p。您不能将模式应用于组,但只能将它们应用于 PathItem。如果您的 PathItems 在一个组中,您可以进入 GroupItem 以获取其 PathItems 属性。此示例显示了在文档级别引用路径,该路径考虑了文档中的每个路径,无论是否嵌套。在我的文档中,我只有一个矩形来演示 VBS 代码。

Set AiApp = CreateObject("Illustrator.Application")
Set Doc = AiApp.ActiveDocument

Set MyPatternSwatch = Doc.Swatches.GetByName("Alyssa")
Set MyRect = Doc.PathItems(1)

MyRect.FillColor = MyPatternSwatch.Color

【讨论】:

  • 如果问题更清楚,也许您会回答正确的问题。不过,您最近的编辑似乎很赚钱。
  • 也许是这样,也许不是,我与世界各地的人们打交道,其中一些人来自英语不是母语的地方,即使对于最乐于助人的提问者来说,交流这些错综复杂的话题也可能具有挑战性.具体来说,跨越艺术和软件术语是很困难的,这就是为什么我倾向于提倡对这个相当模糊的开发领域宽大处理。我希望我清楚地提供了我的观点。
  • 这很好,但你必须明白Stack Overflow 不是来回答每一个晦涩的问题的。如果您认为您可以将问题制作成更易于阅读并解释问题的内容(毕竟它是一个 wiki),那就去做吧,我一定会投票重新开放。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多