Странные изменения сценариев между Adobe CS6 и CC — нужны обходные пути

Наша компания до сих пор использует Adobe Creative Suite 6. У нас есть очень длинные и подробные сценарии JavaScript, которые мы используем с InDesign CS6 и Illustrator CS6. Мы находимся в процессе перехода с CS6 на Creative Cloud и заметили две основные проблемы с работой наших скриптов в CC:

  1. Когда сценарий InDesign вызывает Illustrator через BridgeTalk, сценарий приостанавливается до тех пор, пока Illustrator не станет приложением переднего плана. То есть мне нужно фактически щелкнуть значок Illustrator в доке или переключить задачу в Illustrator из InDesign, прежде чем сценарий продолжит делать то, что он делает. Хотя это не является огромной проблемой, она действительно замедляет работу и добавляет дополнительный ручной шаг к тому, что должно быть полностью автоматизированным процессом.

  2. Один из наших скриптов InDesign открывает файл .indd, выполняет с ним кучу действий, затем предполагается сохранить его (поверх существующего файла) и закрыть. Теперь с InDesign CC иногда появляется диалоговое окно «Сохранить», когда нужно просто сохранить файл в автоматическом режиме. Когда сценарий запускается в InDesign CS6, файл автоматически сохраняется без каких-либо проблем. Опять же, это добавляет еще один ручной шаг к тому, что должно быть автоматизировано и не требует вмешательства. По общему признанию, место сохранения файла находится на сетевом диске, но опять же, InDesign CS6 никогда не доставлял нам никаких проблем с этим.

Кто-нибудь знает об исправлении или обходном пути для этих новых проблем, которые Creative Cloud навлекла на нас?

2014-11-03 @ 14:51 РЕДАКТИРОВАТЬ: я только что обнаружил, что метод Document.save() принимает логический аргумент, который может принудительно сохранить. Если у кого-то еще есть проблемы с этим, ознакомьтесь с руководством по Jongware для получения подробной информации о как использовать этот аргумент.

Тем не менее, мне все еще нужно решить эту первую проблему. Любые идеи?


person Sturm    schedule 03.11.2014    source источник
comment
Должен ли я предположить, что вы используете BridgeTalk.bringToFront('illustrator')? Я видел, что это не работает для некоторых приложений CC. Я ищу обходной путь.   -  person CRGreen    schedule 04.11.2014
comment
На самом деле, я не знал о таком методе. Я только что попытался использовать это как первую строку части сценария Illustrator после ее вызова через BridgeTalk, и вуаля! Кажется, это позаботилось обо мне. Если вы хотите опубликовать это предложение в качестве ответа на мой вопрос, я дам вам кредит, отметив его как принятый ответ.   -  person Sturm    schedule 04.11.2014
comment
Что касается вашей проблемы с тем, что BridgeTalk.bringToFront() не работает для некоторых приложений CC, мне нужно запустить BridgeTalk только между InDesign и Illustrator, поэтому я не знаю о других приложениях. Если у меня будет свободное время на работе (что, к сожалению, маловероятно), я попробую несколько других приложений CC.   -  person Sturm    schedule 04.11.2014


Ответы (1)


Попробуйте использовать

BridgeTalk.bringToFront('illustrator');

как средство вывести Illustrator на передний план. Существуют и другие параметры (см. Руководство по инструментам JavaScript http://www.adobe.com/jp/joc/incopy/scripting/pdfs/JavaScript_Tools_Guide_CS4.pdf), но вы сможете использовать простейшую форму, как показано выше.

person CRGreen    schedule 04.11.2014