I tried to create an action to automate "duplicate artboard" in Illustrator CC but it was not possible. I would like to know if there is any script to do this.
Thanks
Answer
Yea the problem is, it's not a recordable action, and while it appears simple on the surface, there's apparently a lot to duplicating an artboard. But, you can augment the code with your needs. This snippet will make a new artboard and use copy/paste to put the items on the new artboard. If the new artboard happens to be off the side of the pasteboard, that's a code edit. If you happen to have 1000 artboards already and adding the next one throws an error or causes a crash, that's a code edit. If you have a problem with how it trashes your existing selection, or clipboard, you better believe that's a code edit!
But here is my simple sample!
#target illustrator
function test(){
var doc = app.activeDocument;
var thisBoardIndex = doc.artboards.getActiveArtboardIndex();
var thisBoard = doc.artboards[thisBoardIndex];
var thisRect = thisBoard.artboardRect;
var lastBoard = doc.artboards[doc.artboards.length - 1];
var lastRect = lastBoard.artboardRect;
doc.selectObjectsOnActiveArtboard();
app.copy();
var newBoard = doc.artboards.add(thisRect);
var offsetH = 20;
newBoard.artboardRect = [
lastRect[2] + offsetH,
lastRect[1],
lastRect[2] + offsetH + (thisRect[2] - thisRect[0]),
lastRect[3]
];
newBoard.name = thisBoard.name + " copy";
app.executeMenuCommand("pasteFront");
doc.selection = null;
};
test();
No comments:
Post a Comment