Если есть вопросы по скриптам

  • Автор темы Автор темы Oleg Butrin
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
Ответ: Если есть вопросы по скриптам

Спасибо! Со всем разобрался! А ни у кого нет скриптов для работы с поэзией?
 
Ответ: Если есть вопросы по скриптам

Решила заняться изучением скриптов для Indesign. И вот сразу же первая проблема. Пишу скрипт, который увидела в статье:

with (app) {
var MyDoc = documents.add();
var MyPages = MyDoc.pages[0];
var TextFrame = MyPages.textFrames.add();
with (TextFrame){
geometricBounds = MyPages.bounds;
contents = "Hello, World!"
}
}

на что мне индиз выдает ошибку http://s44.radikal.ru/i106/1006/5b/237a358fa6ab.jpg

Еще не подскажете где можно почитать описание скриптов Индиза, только по-русски.))))
 
Ответ: Если есть вопросы по скриптам

'TextFrame' — зарезервированное имя, т.е. вы пытаетесь присвоить значение служебному объекту доступному только для чтения. Поменяйте название переменной на 'myTextFrame'.
 
Ответ: Если есть вопросы по скриптам

Еще не подскажете где можно почитать описание скриптов Индиза, только по-русски.
"Будь моя воля, я бы играла Шекспира только на языке оригинала" (Х/ф "По семейным обстоятельствам").:)
А если серьезно, русскоязычный объем информации пока не настолько достаточен, чтобы можно было обойтись только им. Поэтому настоятельно рекомендовал бы английский подучить хотя бы в этой области. Себе же жизнь легче сделаете, причем намного.
 
Ответ: Если есть вопросы по скриптам

Ну, это же обычный JS или VB. В любом книжном целые шкафы забиты этой ерундой ;) Достаточно понять структуру объектной модели индизайна и вперёд.
 
Ответ: Если есть вопросы по скриптам

может подскажите какую-нибудь? многие из них заточены под веб нужды, а мне это не нужно. Скачала книгу "Скрипты в InDesign. Руководство для умных дизайнеров и ленивых верстальщиков", но что не сделаю из примеров, ничего не работает, да и сложновато там для меня.
 
Ответ: Если есть вопросы по скриптам

Для Олега Бутрина:
Здравствуйте, Олег!
Нашел ваш скрипт TFManager и попробовал его запустить (WinXP Prof, InDesign CS3).
Но, начав работать нормально (выдав окно для ввода установок), скрипт после нажатия ОК для исполнения выдает сообщение об ошибке (приложен скриншот). В чем может быть проблема?
Буду благодарен за ответ!
 

Вложения

  • TFManager_error.jpg
    TFManager_error.jpg
    160 КБ · Просм.: 560
Ответ: Если есть вопросы по скриптам

В том, что у Story нет метода .search(), начиная с версий CS3. Есть метод .findText(). Есть еще методы поиска, но в данном случае нужен этот.
Но главное! Я уже уведомлял уважаемых посетителей О. Если внимательно смотреть глазами, можно многое увидеть! :)
 
Ответ: Если есть вопросы по скриптам

Здравствуйте, Виталий!
Я пытался написать в личку Олегу (<obutrin@indesign.rudtp.ru>, вы это имели ввиду?), но Outlook почему-то возвращает письмо с ошибкой.
Спасибо большое за совет!
Правда просто замена search на findText ничего не дала, а скриптописец из меня пока еще нулевой - продолжаю разбиратся:)
 
Ответ: Если есть вопросы по скриптам

Добрый вечер.
Скрипт для InDesign CS3.
Должен определять параметры изображений, которые не в CMYK: цветовую модель, разрешение и формат.
Проблема. Некорректно определяет формат изображения. Если не выделено ни одно изображение, то формат не определяется, если выбрать одно изображение, то его формат присваивается всем изображениям, если выделить несколько изображений, то опять не определяет.

var myAllGraphics = app.activeDocument.allGraphics;
for (i=0; i<myAllGraphics.length;i++)
{
var myAllGraphic = myAllGraphics;
if (myAllGraphic.constructor.name == 'Image')
{
var myImages = [];
if (myAllGraphic.space !='CMYK')
{
myImages.push('Color Space - '+myAllGraphic.space);
myImages.push('Resolution - '+myAllGraphic.actualPpi[0]);
myImages.push('Type Name - '+myAllGraphic.imageTypeName);
alert (myImages);
}
}
}
 
Ответ: Если есть вопросы по скриптам

var myImages = [] уберите из цикла и поставьте первой строкой
 
Ответ: Если есть вопросы по скриптам

а чем preflight не угодил?
 
Ответ: Если есть вопросы по скриптам

Скрипт для InDesign CS3.
Должен определять параметры изображений, которые не в CMYK:
Видимо, это пока только эскиз-набросок.
Потому как назначение после испытания осталось неясным: скрипты пишутся, чтобы экономить время и собирать информацию в нужном (и удобном) виде; этот не экономит время хотя бы потому, что alert выплывает на каждое найденное изображение (а если таких будет 100-200-500?), а полученную информацию никак не проанализировать: не указано ни имя линка, ни страница, на которой он находится...
Что касается
если выбрать одно изображение,
то ориентирования на выделенную область (ли отсутствие выделения) в скрипте нигде нет, так что результат его работы не зависит от того, что у Вас выделено.
Что касается формата, который не определяется, то правильно так:
PHP:
myImages.push('Type Name - '+String(myAllGraphic.imageTypeName));
Ну напоследок присоединяюсь к Skvoznyak:
а чем preflight не угодил?
 
Ответ: Если есть вопросы по скриптам

Спасибо за варианты, но не помогло.
Видимо, это пока только эскиз-набросок.
Потому как назначение после испытания осталось неясным: скрипты пишутся, чтобы экономить время и собирать информацию в нужном (и удобном) виде; этот не экономит время хотя бы потому, что alert выплывает на каждое найденное изображение (а если таких будет 100-200-500?), а полученную информацию никак не проанализировать: не указано ни имя линка, ни страница, на которой он находится...
Это часть скрипта. Решил весь не писать, т.к. проблема здесь. Ну и использовал alert'ы сделать, чтоб результат увидеть.
то ориентирования на выделенную область (ли отсутствие выделения) в скрипте нигде нет, так что результат его работы не зависит от того, что у Вас выделено.
Вот это меня и удивляет. Но работает он именно так как я описал.

Ну напоследок присоединяюсь к Skvoznyak:
Я недели две назад решил попробовать себя в написании скриптов. Особо никаких идей не было. И под руку попался preflight. Вот и решил, что-то подобное сделать.
 
Ответ: Если есть вопросы по скриптам

так попробуйте
var myImages = [];
var myGraphic
var myAllGraphics = app.activeDocument.allGraphics;
for (i=0; i<myAllGraphics.length;i++)
{
myGraphic = myAllGraphics;
if (myGraphic.constructor.name == 'Image' && myGraphic.space !='CMYK')
{
myImages.push('Color Space - '+myGraphic.space);
myImages.push('Resolution - '+myGraphic.actualPpi[0]);
myImages.push('Type Name - '+myGraphic.imageTypeName);
alert (myImages);
}
}
 
Ответ: Если есть вопросы по скриптам

Борис, не поверите, а ведь таки чудеса с кодом:): myGraphic.imageTypeName срабатывает только если выделить изображение! Удивлен.

А вот так вроде сработало:
PHP:
myGraphic.itemLink.linkType
 
Ответ: Если есть вопросы по скриптам


Не по теме:
Черт... занят сейчас
 
Ответ: Если есть вопросы по скриптам

Eugenyus, вышеприведенный код в сообщении #475 у меня работает как надо (независимо от выделений) - ID 6.05 WinXP SP3. Ну а что alert показывает с накоплением, то это благодаря исходному коду спрашивающего
 
скрипты CS2 для CS4 и CS5

я верстальщик газеты.
последним временем работал в Индизайне СЦ2, и пользовался некоторыми скриптами, все работало хорошо и стабильно. Но когда я попытался перейти на более новейшую версию индюка, одни скприпты начали работать не корректно, а некоторык вообще не работали.

Сейчас все так же работаю в СЦ2, но решил переустановить ПО на Винду 7 и установить весь пакет Адоба СЦ5.
У меня всего 3 важных скрипта, можете ли Вы мне помочь, что бы они корректно работали в новой среде СЦ5 или СЦ4 индизайна?

буду благодарен!
 
Статус
Закрыто для дальнейших ответов.