Помощь - Поиск - Пользователи - Календарь
Полная версия: Применить Pitstop action к серии PDF-файлов
ProDTP > Графика и препресс > Adobe Acrobat & PDF
arhip
Для начала, спасибо Лёше ака feuerloescher за ссылку на топик у соседей, где приводятся варианты решения. И, конечно, спасибо Вадиму aka 1998 за собственно решение. Больше я мог бы ничего и не писать )) но имею дурацкую привычку разжёвывать. По-учительски: пока объяснял, сам наконец понял. Короче, вдруг кому-то нужно готовенькое, так вот оно.

Итак, задача у меня была такая — еженедельно имею серию PDF-файлов, к которым нужно применять одно и то же действие (масштабирование). Оптимальный для себя способ масштабирования я нашёл в Питстопе. Был уверен, что в экшенах будет и возможность батча. Перерыл все команды, но не нашёл. Нагуглить тоже ничего не удалось. Из нескольких источников прозвучало: Питстоп Сервер. Но, оказывается, есть ещё один вариант. Он хитрый, сам бы я не додумался, что надо идти таким сложным путём — запускать одно автоматическое действие через другое, то через второе, а второе ещё через третье!

В общем, план действий таков:
- создать экшен в Питстопе;
- создать QuickRun (в меню Plug-Ins>Pitstop Pro), куда прописать этот экшен (или несколько экшенов, если надо), там же можно отключить создание отчёта о результах выполнения (опция Show Results), ибо достанет;
- создать Sequence в стандартном акробатовском батче (Advanced > Document Processing > Batch Processing) и задать там в качестве единственной команды выполнение кода JS, где ключевой является строка "выполнить QuickRun такой-то". JS я так и не изучил, но сориентировался по скриншоту, который дал Вадим в том топике по ссылке. Строку с опциями сохранения из JS я выкинул, потому что за сохранение у меня отвечает настройка в Sequence (см. Output Options). И выкинул строку "this.closeDoc();", потому что мне удобнее пролистать все файлы и убедиться, что нет "слётов". В итоге JS выглядит так:
Код
app.openDoc(this.path);
app.execMenuItem('FICL:PitStop_PitStop_MenuItem_QuickSets_Execute_2_0');

Строка "Execute_2_0" означает "выполнить 1-й QuickRun". Соответственно, "3" будет означать "2-й" and so on.

Где брать файлы для обработки, настраивается в опциях Sequence. Я включил "Спрашивать при запуске на выполнение" (Ask When Sequence is Run) — выскакивает диалог открытия файлов. Странно, но мне пришлось оставить в JS строку "app.openDoc" — без неё ничего не происходит, хотя я не понимаю почему, ведь за открытие файлов отвечает Sequence.

Надеюсь, это пошаговое изложение кому-нибудь пригодится. Ещё раз спасибо Лёше и Вадиму. Пойду проверять в деле.
AVKom
Век живи век учись... Благодарствую, хотя самому пришлось подобное изобретать...
arhip
Цитата
Строка "Execute_2_0" означает "выполнить 1-й QuickRun". Соответственно, "3" будет означать "2-й" and so on.

Хм. Это объяснения я содрал у Вадима, но, кажется, он ошибся. У меня это не работает. Если я пытаюсь запустить второй по списку QuickRun, то вижу в акробатовском дебаггере сообщение об ошибочном аргументе. Методом тыка допёр, что в коде
Код
app.openDoc(this.path);
app.execMenuItem('FICL:PitStop_PitStop_MenuItem_QuickSets_Execute_2_0');

порядковым номером КвикРана является последнее число. Соответственно, 0=1-й QuickRun, 1=2-й QuickRun, и т.д. Так у меня работает, да. И это логично, ведь в JS счёт идёт с нуля. А вот что означает первое число ("2"), я не выяснил. Может быть, опция выполнения КвикРана.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2012 Invision Power Services, Inc.

Реклама

   Rambler's Top100    Яндекс цитирования