Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Documentation: https://ai-scripting.docsforadobe.dev/jsobjref/Document/#documentartboards
- //How to alert: alert("Hello world!")
- //How to confirm: confirm ("Are you sure?")
- function showCustomDialog() {
- var dlg = new Window("dialog", "Custom Settings");
- dlg.add("statictext", undefined, "Number of columns:");
- var colInput = dlg.add("edittext", undefined, "9");
- colInput.characters = 10;
- dlg.add("statictext", undefined, "Size:");
- var sizeInput = dlg.add("edittext", undefined, "50");
- sizeInput.characters = 10;
- dlg.add("statictext", undefined, "Spacing:");
- var spacingInput = dlg.add("edittext", undefined, "20");
- spacingInput.characters = 10;
- dlg.add("statictext", undefined, "Names (comma separated):");
- var namesInput = dlg.add("edittext", undefined, "", {multiline: true, scrolling: true});
- namesInput.preferredSize = [300, 120];
- var btnGroup = dlg.add("group");
- btnGroup.alignment = "right";
- var okBtn = btnGroup.add("button", undefined, "OK", {name: "ok"});
- var cancelBtn = btnGroup.add("button", undefined, "Cancel", {name: "cancel"});
- if (dlg.show() == 1) {
- var numColumns = parseInt(colInput.text, 10);
- var size = parseInt(sizeInput.text);
- var spacing = parseInt(spacingInput.text);
- var names = namesInput.text;
- return {columns: numColumns, size: size, names: names, spacing: spacing};
- } else {
- alert("Canceled.");
- return null;
- }
- }
- var doc = app.activeDocument;
- var settings = showCustomDialog();
- var colsCount = settings["columns"];
- var artboardSize = settings["size"];
- var artboardNamesStr = settings["names"];
- var pad = settings["spacing"];
- var x = 0;
- var y = 0;
- var artboardCounter = 0;
- var artboardNamesArray = artboardNamesStr.split(",");
- for(artboardIndex in artboardNamesArray){
- var artboardName = artboardNamesArray[artboardIndex];
- doc.artboards.add([x, -y, new UnitValue(x + artboardSize, "px"), -new UnitValue(y + artboardSize, "px")]);
- var lastArtboard = doc.artboards[doc.artboards.length - 1];
- lastArtboard.name = artboardName;
- artboardCounter += 1;
- x = x + artboardSize + pad;
- if(artboardCounter >= colsCount) {
- artboardCounter = 0;
- x = 0
- y = y + artboardSize + pad;
- }
- }
- app.redraw();
Advertisement
Add Comment
Please, Sign In to add comment