I am using Photoshop CC 2015. It recently added an art board feature. I love it, but now issue I want to send my customer PSD file but they don't use CC 2015 so how they can see all of my artboards? So I am wondering if there is any way to save each art board as a separate PSD.
-
1I don't think you can do this out of the box. The nearest thing you have is Export > Artboards to PDF ... You'd probably be able to script it.– KJPCommented Jun 28, 2015 at 19:41
-
I don't know about Photoshop because I'm not on my work computer right know but in illustrator, when you use the Save As function there is an option where you can save each artboard to a separate .ai file Maybe there is a similar one for that new feature in Photoshop– ekcloneCommented Jun 28, 2015 at 20:11
8 Answers
Maybe you can help script artboardsToPSD.jsx
#target photoshop
app.bringToFront();
var docRef = app.activeDocument,
allArtboards,
artboardsCount = 0,
inputFolder = Folder.selectDialog("Select a folder to process");
if (inputFolder) {
function getAllArtboards() {
try {
var ab = [];
var theRef = new ActionReference();
theRef.putProperty(charIDToTypeID('Prpr'), stringIDToTypeID("artboards"));
theRef.putEnumerated(charIDToTypeID('Dcmn'), charIDToTypeID('Ordn'), charIDToTypeID('Trgt'));
var getDescriptor = new ActionDescriptor();
getDescriptor.putReference(stringIDToTypeID("null"), theRef);
var abDesc = executeAction(charIDToTypeID("getd"), getDescriptor, DialogModes.NO).getObjectValue(stringIDToTypeID("artboards"));
var abCount = abDesc.getList(stringIDToTypeID('list')).count;
if (abCount > 0) {
for (var i = 0; i < abCount; ++i) {
var abObj = abDesc.getList(stringIDToTypeID('list')).getObjectValue(i);
var abTopIndex = abObj.getInteger(stringIDToTypeID("top"));
ab.push(abTopIndex);
}
}
return [abCount, ab];
} catch (e) {
alert(e.line + '\n' + e.message);
}
}
function selectLayerByIndex(index, add) {
add = undefined ? add = false : add
var ref = new ActionReference();
ref.putIndex(charIDToTypeID("Lyr "), index + 1);
var desc = new ActionDescriptor();
desc.putReference(charIDToTypeID("null"), ref);
if (add) desc.putEnumerated(stringIDToTypeID("selectionModifier"), stringIDToTypeID("selectionModifierType"), stringIDToTypeID("addToSelection"));
desc.putBoolean(charIDToTypeID("MkVs"), false);
executeAction(charIDToTypeID("slct"), desc, DialogModes.NO);
}
function ungroupLayers() {
var desc1 = new ActionDescriptor();
var ref1 = new ActionReference();
ref1.putEnumerated(charIDToTypeID('Lyr '), charIDToTypeID('Ordn'), charIDToTypeID('Trgt'));
desc1.putReference(charIDToTypeID('null'), ref1);
executeAction(stringIDToTypeID('ungroupLayersEvent'), desc1, DialogModes.NO);
}
function crop() {
var desc1 = new ActionDescriptor();
desc1.putBoolean(charIDToTypeID('Dlt '), true);
executeAction(charIDToTypeID('Crop'), desc1, DialogModes.NO);
}
function saveAsPSD(_name) {
var psd_Opt = new PhotoshopSaveOptions();
psd_Opt.layers = true; // Preserve layers.
psd_Opt.embedColorProfile = true; // Preserve color profile.
psd_Opt.annotations = true; // Preserve annonations.
psd_Opt.alphaChannels = true; // Preserve alpha channels.
psd_Opt.spotColors = true; // Preserve spot colors.
app.activeDocument.saveAs(File(inputFolder + '/' + _name + '.psd'), psd_Opt, true);
}
function main(i) {
selectLayerByIndex(allArtboards[1][i]);
var artboardName = app.activeDocument.activeLayer.name;
executeAction(stringIDToTypeID("newPlacedLayer"), undefined, DialogModes.NO);
executeAction(stringIDToTypeID("placedLayerEditContents"), undefined, DialogModes.NO);
app.activeDocument.selection.selectAll();
ungroupLayers();
crop();
saveAsPSD(artboardName);
app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
}
allArtboards = getAllArtboards();
artboardsCount = allArtboards[0];
for (var i = 0; i < artboardsCount; i++) {
docRef.suspendHistory('Save Artboard as PSD', 'main(' + i + ')');
app.refresh();
app.activeDocument.activeHistoryState = app.activeDocument.historyStates[app.activeDocument.historyStates.length - 2];
}
-
-
download this script and place it somewhere on your computer, then go to Files > Scripts > Browse, then you select this script and run it i.imgur.com/jk3yGL1.png– ekcloneCommented Jun 29, 2015 at 14:44
-
wow.. wow.. it work so nicely.. thanks @artemfedorov for your nice and quick script– pagolCommented Jun 29, 2015 at 15:58
-
worked like a charm, thank you a lot for this. I had 12 artboards of a website and it was getting too heavy to do anything Commented Nov 4, 2015 at 11:36
I'm not sure since which update but Photoshop CC does this out of the box. You can export all artboards to PSDs or just the selected ones.
Just go to File > Export > Artboards to Files... and give it a go.
-
1thanks. for your answer. artboards to files new option in cc 2015.1 . i think i wasn't in cc 2015. adobe realize this option need :)– pagolCommented Jan 25, 2016 at 5:58
-
This should be the correct answer, or add it to the right answer as an update. Commented Aug 7, 2021 at 8:46
I haven't looked but I thought it was just right clicking on the artbord and then export as.
UPDATE
- Select all layers inside the artboard
- Right click and
Convert to Smart Object
File > Export > Layers to Files
When you do this you will end up separate files for each artboard as psds.
If you want to convert back to layers, once you've made the originals smart objects, double click and then drag back over to the original, or just let them be—layer stacks as smart objects can come in handy.
Hope this helps!
-
-
yes this we can do .. as photoshop don't give us direct easy way.. thanks again– pagolCommented Jun 29, 2015 at 13:23
-
1This is because the purpose of artboards is not to make more photoshop files. They are best used for size variations or separate concepts then exported as PDFs for review. Though even saying that, Illustrator does let you export artboards by selecting an artboard range at export. Commented Jun 29, 2015 at 13:55
What I normally do is: Click on the Artboard Layer with right mouse > Duplicate Artboard > New
And Boom! A New window with this artboard will appear and you can save separately.
The quick way is File > Export > Artboards to Files. However, this will create PSDs that each contain a single artboard. Some apps (Adobe Encore seems to be one example) do not support artboards properly, and will import the PSD as if you had first used the Image > Reveal All menu command. In other words, you will end up with a mess.
You can fix this by opening the output PSDs, right-clicking on the artboard in each file, and selecting “Ungroup artboards”. Then re-save.
I have also used the script recommended by @artemfedorov above (see https://graphicdesign.stackexchange.com/a/55762/12708), and it seems to accomplish this all in one step, so I recommend it.
You can share the whole file via creative cloud with extract enabled. This will allow your customer to view the file as is, and switch layers on and off etc.
I think you can duplicate your selection to new psd file. This is easy way to export the artboard as separate layer :)
- Choose the layer you want to export
- Right click and choose Duplicate layer
- Choose New and type the name of file
- Click OK
I recommend you to check these tips for Adobe Artboards http://designmodo.com/photoshop-artboards/. They are very useful for beginners.