if (app.documents.length > 0) {
var doc = app.activeDocument;
var docName = doc.name;
var artbReg = new RegExp("Artboard","g"); // строка для регулярки
if (docName.indexOf('.') != -1) {
var token = docName.lastIndexOf('.');
docName = docName.substring(0, token);
};
var savePath = Folder.selectDialog("Expot JPG to folder:");
var dest = File(savePath + "/" + docName);
exportFileToJPEG(dest);
savePath.execute(); // открывает в проводнике папку куда сохранили джипеги
};
function exportFileToJPEG(dest) {
var exportOptions = new ExportOptionsJPEG();
exportOptions.artBoardClipping = true;
exportOptions.antiAliasing = false;
exportOptions.qualitySetting = 100;
var type = ExportType.JPEG;
for (i=0; i<doc.artboards.length; i++) {
doc.artboards.setActiveArtboardIndex(i);
if (artbReg.test(doc.artboards[i].name)) // если так, то...
{ fileSpec = new File(dest + "_" + (i+1) + ".jpg"); }
else // а если эдак, то...
{ fileSpec = new File(dest + "_" + doc.artboards[i].name + ".jpg");
}
app.activeDocument.exportFile(fileSpec, type, exportOptions);
// это будет путь к файлу, который без пробелов сохранился на диск
fileSpec2=fileSpec.path.toString()+"/"+fileSpec.name.toString().replace(new RegExp('(%20)','g'),'-');
// из fileSpec делаем нормальную строку вида диск:\путь\имя.jpg
// может и красивее можно исполнить, но это не ко мне
fileSpec=fileSpec.toString().replace(new RegExp('(/)'),'');
fileSpec=fileSpec.toString().replace(new RegExp('(/)','g'),'\\');
fileSpec=fileSpec.toString().replace(/\\/, ':\\');
fileSpec=File.decode (fileSpec);
// вжух! магия.... и перед глазами всё плывёт, плывёт....
sss = new File(fileSpec2);
sss.rename (fileSpec.toString());
};
};