Доброго всем дня!
Помогите, пожалуйста! Буду благодарна за любой совет! Я не умею писать скрипты, но нужда заставляет)))
Есть скрипт, который из указанной папки все JPG открывает с условием, если есть встроенный профиль, то открывает в нем, если нет, то в определенном в зависимости от цветового пространства, потом ресайдит, конвертирует и сохраняет в tif. На первый взгляд скрипт работает правильно, на большом объеме не проверяла, НО если перед запуском скрипта открыть любой JPG без встроенного профиля (предположим что это будет RGB) через какой-либо профиль и закрыть без сохранения, скрипт при работе все jpg-RGB без профиля будет открывать не через указанный профиль в скрипте, а через тот, что был указан при предыдущем открытии картинки.
Подскажите, пожалуйста, как можно заставить скрипт открывать картинки только в указанных профилях
Код скрипта:
#target photoshop
var inputFolder = Folder.selectDialog("Откуда брать картинки");
var outFolder = Folder.selectDialog("Куда складывать картинки");
// FOLDERS
var folder1 = inputFolder;
var saveFolder = outFolder;
displayDialogs = DialogModes.NO;
if (searchMask = '*.jpg') {
var list1 = folder1.getFiles(searchMask);
var tifOptions = new TiffSaveOptions();
tifOptions.layers = true;
embedColorProfile = true;
for (var i = 0; i < list1.length; i++) {
var doc = open(list1);
var docName = doc.name;
obrtabotka()
// SAVING
doc.saveAs(new File(saveFolder + '/' + docName.split('.')[0] + '.tif'), tifOptions);
doc.close(SaveOptions.SAVECHANGES);
}
}
function obrtabotka(){
if(doc.colorProfileType != ColorProfile.NONE) {
alert (app.activeDocument.colorProfileName)
}
else {
if (doc.mode.toString() == DocumentMode.CMYK) {
doc.colorProfileName = "ISO Coated v2 (ECI)";
alert (app.activeDocument.colorProfileName);
}
if (doc.mode.toString() == DocumentMode.RGB) {
doc.colorProfileName = "ARRI WCG Preview LUT for P3";
alert (app.activeDocument.colorProfileName);
}
if (doc.mode.toString() == DocumentMode.GRAYSCALE) {
doc.colorProfileName ="Dot Gain 20%";
alert (app.activeDocument.colorProfileName);
}
}
if (doc.mode.toString() == DocumentMode.CMYK) {
doc.resizeImage(undefined, undefined, 300, ResampleMethod.NONE);
doc.convertProfile("Japan Color 2001 Coated", Intent.RELATIVECOLORIMETRIC, true);
}
if (doc.mode.toString() == DocumentMode.RGB) {
doc.resizeImage(undefined, undefined, 300, ResampleMethod.NONE);
doc.convertProfile("Japan Color 2001 Coated", Intent.RELATIVECOLORIMETRIC, true);
}
if (doc.mode.toString() == DocumentMode.GRAYSCALE) {
doc.resizeImage(undefined, undefined, 300, ResampleMethod.NONE);
doc.convertProfile("Dot Gain 30%", Intent.PERCEPTUAL, false);
}
}
alert ("Обработка завершена")
Помогите, пожалуйста! Буду благодарна за любой совет! Я не умею писать скрипты, но нужда заставляет)))
Есть скрипт, который из указанной папки все JPG открывает с условием, если есть встроенный профиль, то открывает в нем, если нет, то в определенном в зависимости от цветового пространства, потом ресайдит, конвертирует и сохраняет в tif. На первый взгляд скрипт работает правильно, на большом объеме не проверяла, НО если перед запуском скрипта открыть любой JPG без встроенного профиля (предположим что это будет RGB) через какой-либо профиль и закрыть без сохранения, скрипт при работе все jpg-RGB без профиля будет открывать не через указанный профиль в скрипте, а через тот, что был указан при предыдущем открытии картинки.
Подскажите, пожалуйста, как можно заставить скрипт открывать картинки только в указанных профилях
Код скрипта:
#target photoshop
var inputFolder = Folder.selectDialog("Откуда брать картинки");
var outFolder = Folder.selectDialog("Куда складывать картинки");
// FOLDERS
var folder1 = inputFolder;
var saveFolder = outFolder;
displayDialogs = DialogModes.NO;
if (searchMask = '*.jpg') {
var list1 = folder1.getFiles(searchMask);
var tifOptions = new TiffSaveOptions();
tifOptions.layers = true;
embedColorProfile = true;
for (var i = 0; i < list1.length; i++) {
var doc = open(list1);
var docName = doc.name;
obrtabotka()
// SAVING
doc.saveAs(new File(saveFolder + '/' + docName.split('.')[0] + '.tif'), tifOptions);
doc.close(SaveOptions.SAVECHANGES);
}
}
function obrtabotka(){
if(doc.colorProfileType != ColorProfile.NONE) {
alert (app.activeDocument.colorProfileName)
}
else {
if (doc.mode.toString() == DocumentMode.CMYK) {
doc.colorProfileName = "ISO Coated v2 (ECI)";
alert (app.activeDocument.colorProfileName);
}
if (doc.mode.toString() == DocumentMode.RGB) {
doc.colorProfileName = "ARRI WCG Preview LUT for P3";
alert (app.activeDocument.colorProfileName);
}
if (doc.mode.toString() == DocumentMode.GRAYSCALE) {
doc.colorProfileName ="Dot Gain 20%";
alert (app.activeDocument.colorProfileName);
}
}
if (doc.mode.toString() == DocumentMode.CMYK) {
doc.resizeImage(undefined, undefined, 300, ResampleMethod.NONE);
doc.convertProfile("Japan Color 2001 Coated", Intent.RELATIVECOLORIMETRIC, true);
}
if (doc.mode.toString() == DocumentMode.RGB) {
doc.resizeImage(undefined, undefined, 300, ResampleMethod.NONE);
doc.convertProfile("Japan Color 2001 Coated", Intent.RELATIVECOLORIMETRIC, true);
}
if (doc.mode.toString() == DocumentMode.GRAYSCALE) {
doc.resizeImage(undefined, undefined, 300, ResampleMethod.NONE);
doc.convertProfile("Dot Gain 30%", Intent.PERCEPTUAL, false);
}
}
alert ("Обработка завершена")