[ID CC2024] Апдейт Шредингера

iGrey

Топикстартер
10 лет на форуме
Сообщения
102
Реакции
6
У меня этот скрипт открывает выделенный линк в PS, меняет канвас сайз и висит так, пока не закроешь с сохранением. После перехожу в ID линк обновляется, префлайт ошибок не выдает 'hz'
фотошоп висит потому что у вас нет нужного экшена, который запускает скрипт.
вот код без экшена.

JavaScript:
with (app)
{
            with (activeDocument)
        {
            imagePreferences.preserveBounds = false;
            if  (documentPreferences.documentBleedOutsideOrRightOffset>10) var MySdvig = 17;
            else var MySdvig = 5;
          
            MyImage = selection [0]; // Получаем имидж для обработки
            if (MyImage.constructor.name != "Image") MyImage = MyImage.graphics[0];
          
            myPath = MyImage.itemLink.filePath;
            MyStatus = MyImage.itemLink.status;
            // Запускаем фотошоп
            var bt = new BridgeTalk();
            bt.target = "photoshop";
            var myScript = AddBleed.toString() + '\r';
            myScript += 'AddBleed(\"' + myPath + '\",' + MySdvig*2 +');';
            bt.body = myScript;   
            bt.send(100);
          
             while (MyStatus != LinkStatus.LINK_OUT_OF_DATE)
                    MyStatus = MyImage.itemLink.status;
            MyImage.itemLink.update ();
        }
    imagePreferences.preserveBounds = true;
}

function AddBleed (myPath, myBleed)
{
with (app) {
try {
var myPsDoc = open(new File(myPath));
with (myPsDoc) {
MyBackr = layers[0].isBackgroundLayer;
layers[0].isBackgroundLayer = false;
preferences.rulerUnits = Units.MM;
resizeCanvas (width.value + myBleed, height.value + myBleed, AnchorPosition.MIDDLECENTER);
layers[0].isBackgroundLayer=MyBackr;
save ();
close ();
}
}
catch (myError) {
}
}
}
 

Drawer

Участник
Сообщения
1 814
Реакции
799
1.gif
 

iGrey

Топикстартер
10 лет на форуме
Сообщения
102
Реакции
6
Удивительное дело, что с разными файлами этот скрипт работает по разному.
С легкими файлами у меня происходит активация окна фотошопа, и потом надо возвращаться вручную в индез.
На тяжелых файлах остается активным индез и вся обработка фотошопа происходит в фоне.
Первом случае апдейт срабатывает, во втором - нет.
"Все чудесатее и чудесатие...."
 

_MBK_

Пикирующий бомбардировщик
15 лет на форуме
Сообщения
33 228
Реакции
10 851
С легкими файлами у меня происходит активация окна фотошопа, и потом надо возвращаться вручную в индез.
На тяжелых файлах остается активным индез и вся обработка фотошопа происходит в фоне.
Ну я ж и предполагал что дело в рассинхронизации и надо вставлять какие то костыльные задержки
 
  • Спасибо
Реакции: iGrey

Lucky1978

12 лет на форуме
Сообщения
345
Реакции
126
А исходя из поведения при активации/не активации окна Фотошопа нет ли возможности в скрипте принудительно активировать его окно?
 

iGrey

Топикстартер
10 лет на форуме
Сообщения
102
Реакции
6
А исходя из поведения при активации/не активации окна Фотошопа нет ли возможности в скрипте принудительно активировать его окно?
Можно.
Но полдня поработав с скриптом понял, что надо переписать логику работы.
Ожидание пока шоп обработает картинку и вернется в индез - лишняя потеря времени.
Сначала буду помечать картинки, которые надо обрабатывать, потом все разом обрабатывать.
Пока обрабатываются пить кофе.
Проблема с апдейтом также должна уйти.
 

Drawer

Участник
Сообщения
1 814
Реакции
799

Не по теме:

Пока обрабатываются пить кофе.
Если дело не в том, чтобы выкроить время попить кофе, может поделитесь полной версией того что делается в фотошопе? Так-то и фотошоп тут лишним может оказаться...

 
  • Спасибо
Реакции: _MBK_

iGrey

Топикстартер
10 лет на форуме
Сообщения
102
Реакции
6

Не по теме:


Если дело не в том, чтобы выкроить время попить кофе, может поделитесь полной версией того что делается в фотошопе? Так-то и фотошоп тут лишним может оказаться...

В фотошопе работает generative expand. Дорисовываются отсутствующие вылеты под обрез у иллюстраций.
Операция в фотошопе на самая быстрая. А Индез такого вроде еще не умеет.