【问题标题】:Script to select objects of the same width & height (Adobe Illustrator)选择相同宽度和高度对象的脚本(Adobe Illustrator)
【发布时间】:2021-12-13 00:03:04
【问题描述】:

我正在尝试制作一个可以选择与所选对象尺寸相同的对象的脚本。

到目前为止,我有这个,它不会引发任何错误,但它也不起作用。谁能帮我解决这个问题?我是 Illustrator 脚本的新手,所以我什至不确定如何检查它是否从当前选定的对象中获取宽度/高度。非常感谢!

var docRef=app.activeDocument;

var objWidth = app.selection[0].width;
var objHeight = app.selection[0].height;

var selectionArray = 0;
var str = 0;

var items = docRef.pageItems;
var n = items.length;

for ( i = 0; i < n ; i++ )
{
    var item = items[i];
    if ( item.width == objWidth
    && item.height == objHeight )
    {
        selectionArray [ selectionArray.length ] = item;
    }
}

【问题讨论】:

  • selectionArray [ selectionArray.length ] = item; 它可以工作,但看起来很奇怪,可能效率不高。通常,如果您想向数组添加元素,可以使用push() 方法:selectionArray.push(item);
  • 那么,你得到答案了吗?
  • 投反对票,因为没有来自 OP 的反馈。

标签: javascript adobe-illustrator


【解决方案1】:

你需要换行:

var selectionArray = 0;

与:

var selectionArray = [];

并且数组将被很好地创建。

但是你想用这个数组做什么呢?如果要选择此数组的所有项目,则必须在代码末尾添加以下行:

app.selection = selectionArray;

如果您想检查一个值以调试您的代码,您可以使用alert 函数。例如:

alert('width = ' + objWidth);

它将显示带有给定文本(包含值)的窗口:

【讨论】:

    猜你喜欢
    • 2016-06-15
    • 1970-01-01
    • 2015-01-09
    • 2018-06-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-03
    相关资源
    最近更新 更多