Перейти к содержанию

Scripting API — обзор

Imposio включает встроенный движок JavaScript (вкладка Script). Скрипты выполняют те же операции, что вы делаете вручную — открывают документы, делают спуск полос, редактируют, экспортируют — для автоматизации рутины и стандартизации вывода.

Запуск скрипта

Откройте вкладку Script, напишите или откройте файл .js, затем нажмите Run. Можно также записывать действия в интерфейсе: Imposio напишет эквивалентный скрипт (фрагменты кода на этих страницах — это именно те вызовы, которые производит рекордер).

Объектная модель

Всё начинается с единственного глобального объекта imposio:

imposio.setUnits("mm");
var doc = imposio.open("/path/to/file.pdf");   // → Document
doc.setImposition({ /* … */ });
var out = doc.generateImposition();            // → новый Document
out.save("/path/to/out.pdf");
  • imposio — точка входа: открытие/создание документов, единицы измерения, утилиты.
  • Document — обёртка PDF: операции со страницами, экспорт, метаданные, безопасность, инспекция.
  • Imposition — настройки setImposition() и generateImposition().
  • Слой редактирования — рисование и управление векторными фигурами, текстом и изображениями.
  • Примеры — готовые скрипты.

Единицы измерения

Длины по умолчанию задаются в миллиметрах. Измените единицу для всех последующих вызовов через imposio.setUnits() ("mm", "cm", "in", "pt").

Значения длин принимают число (в текущей единице) или строку с суффиксом, задающим единицу явно:

imposio.setUnits("mm");
doc.addBlankPage(-1, 210, 297);           // мм
doc.addBlankPage(-1, "8.5in", "11in");   // явная единица для каждого значения

Координаты

Геометрия использует PDF-координаты: начало координат — в левом нижнем углу, Y растёт вверх. Индексы страниц начинаются с 0. Диапазоны страниц — строки: "all", "1-5", "odd", "even", "2,4,7" (пустая строка = все).

Обработка ошибок

Методы, завершившиеся с ошибкой, бросают исключение JavaScript (например, неверное значение enum или отсутствующий документ). Оборачивайте рискованные вызовы в try { … } catch (e) { … }, если нужно корректно обрабатывать сбои. Методы, возвращающие Document, в случае ошибки возвращают null.