【问题标题】:Remove clipping path from selected element从选定元素中删除剪切路径
【发布时间】:2020-04-29 17:15:49
【问题描述】:

我是 Adob​​e Illustrator 脚本的新手,我遇到了从选择中删除所有剪切路径的问题。我知道一处房产path.clipping = false。但我面临的问题是从所有内部项目中删除。

请帮忙。

【问题讨论】:

  • 你使用的属性path.clipping = false是对的。您所说的所有内部项目是指组内的组和组内的所有其他 pageItem?
  • 是的,groupItems 可能包含其他 groupItems、pathItems 甚至复合 Paths。

标签: adobe-illustrator


【解决方案1】:

这需要从上到下遍历所选项目。试试下面的方法。该方法遍历所有groupItems内部,如果在遍历时发现为真,则设置clipping = false。我希望这会有所帮助。

function removeClipping(item) {
    for (var k = 0; k < item.pageItems.length; k++) {
        if (item.pageItems[k].typename == 'GroupItem') {
            removeClipping(item.pageItems[k])
        } else {
            for (var i = item.pageItems.length - 1; i >= 0; i--) {
                var _item = item.pageItems[i];
                if (_item.typename == "PathItem" && _item.clipping) {
                    _item.clipping = false;
                } else if (_item.typename == "GroupItem") {
                    removeClipping(_item);
                }
            }
        }
    }
}

removeClipping(app.selection[0]);

【讨论】:

  • 谢谢,它有效,如果我需要删除剪切路径而不是设置为false,那么我只需要使用_item.remove() ?
  • 正确,只需将_item.clippping = false替换为_item.remove()
猜你喜欢
  • 1970-01-01
  • 2020-02-18
  • 1970-01-01
  • 1970-01-01
  • 2023-03-05
  • 2013-05-17
  • 2021-05-25
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多