Движок JP — быстрое создание PDF на JavaScript

01.07.2021

JP — это написанные на JavaScript классы и методы, которые выполняют всю рутину при создании PDF-файлов.

Внутри движка реализовано:

  • единый формат записи цветов: RGB и CMYK;
  • единый формат позиций объектов (абсолютные и относительные);
  • единый формат размеров (абсолютные и относительные);
  • простое добавление текстовых элементов с выравниванием и несколькими стилями в одной строке;
  • добавление текстов как в виде текстовых блоков, так и в «кривых»;
  • простое рисование элементарных форм или по массиву кривых Безье;
  • раскрашивание текстов и форм согласно шаблонам;
  • настройка макета: радиусы скругления каждого из углов, цвет фона;
  • простое подключение Google-таблиц для генерации сразу нескольких макетов;
  • постоянное развитие возможностей движка за счет новых ситуаций при создании макетов;
  • наличие скриптов и экстеншенов для Adobe Illustrator, чтобы экспортировать макет в веб-интерфейс;
  • подробная документация.

Шаблон — это стандартизованный набор параметров, который хранит настройки всего макета и всех его элементов.

Все элементы макета имеют свои уникальные ключи — slug, по которым происходит применение свойств.

Большинство параметров необязательны и имеют свои значения по умолчанию. Если в шаблоне нет параметров элемента, то они берутся либо из глобального шаблона, либо из самого движка.

Например, все тексты по умолчанию чёрные, выровненные по левому краю и позиционируются по нижней линии букв.

Шаблоны бывают 2 типов: глобальный шаблон и шаблон конкретного макета.

В глобальном макете хранятся общие настройки для всех будущих макетов (если их несколько). Например: радиусы скругления углов макета, цвет фона, шрифт по умолчанию, цвета для возможных форм и текстов.

В шаблоне самого макета хранятся настройки каждого конкретного макета: цвета, позиции объектов, выравнивания, методы рисования форм и прочее. При этом значения самого макета могут перезаписать значения из глобального макета.