使用 Illustrator 脚本将对象居中放置在多个画板上
Centering Objects to Multiple Artboards with Illustrator Script
假设,我在 Illustrator 中有 5x5 25 个画板,每个画板上都有不同的字母。我希望它们以每个画板为中心。有脚本吗?
我已经检查过,但通常他们都在同时为一个画板工作。
给你:
var doc = app.activeDocument;
for (var i=0; i<doc.artboards.length; i++) {
app.selection = null;
doc.artboards.setActiveArtboardIndex(i);
doc.selectObjectsOnActiveArtboard();
to_center(doc.artboards[i], app.selection[0]);
app.selection = null;
}
function to_center(artboard, item){
var artboard_x = artboard.artboardRect[0] + artboard.artboardRect[2];
var artboard_y = artboard.artboardRect[1] + artboard.artboardRect[3];
var x = (artboard_x - item.width)/2;
var y = (artboard_y + item.height)/2;
item.position = [x, y];
}
脚本将第一个项目放在画板中间的每个画板上。
之前:
之后:
假设,我在 Illustrator 中有 5x5 25 个画板,每个画板上都有不同的字母。我希望它们以每个画板为中心。有脚本吗? 我已经检查过,但通常他们都在同时为一个画板工作。
给你:
var doc = app.activeDocument;
for (var i=0; i<doc.artboards.length; i++) {
app.selection = null;
doc.artboards.setActiveArtboardIndex(i);
doc.selectObjectsOnActiveArtboard();
to_center(doc.artboards[i], app.selection[0]);
app.selection = null;
}
function to_center(artboard, item){
var artboard_x = artboard.artboardRect[0] + artboard.artboardRect[2];
var artboard_y = artboard.artboardRect[1] + artboard.artboardRect[3];
var x = (artboard_x - item.width)/2;
var y = (artboard_y + item.height)/2;
item.position = [x, y];
}
脚本将第一个项目放在画板中间的每个画板上。
之前:
之后: