Возможности

Базовые, но важные детали сделаны правильно.

Полный функционал gPdf: JSON-нативный макет, векторные штрихкоды, встроенные шрифты CJK + арабский + деванагари, архивные профили PDF/A, потоки вложений электронного счета, пагинация.

Смотреть сценарии использования
/01

Создан для счетов

$0,00005 за страницу, p50 3 мс, встроенный CJK, поток вложений PDF/A-3. Четыре числа, которые fintech, ERP и налоговые команды проверяют первыми.

// invoice — header + table pattern
{ "size": "a4",
  "elements": [
    { "type": "text",  "x": 18, "y": 22, ... },
    { "type": "table", "x": 18, "y": 60, ... }
  ]}
Почему JSON лучше HTML→PDF
/02

Создан для доставочных этикеток

Пресеты размеров label_100_150 и label_4_6_in. Векторные GS1-128, ITF-14, SSCC с точностью 0,1 мм — перевозчики и 3PL печатают на пике без растеризованных штрих-кодов.

// 4×6 thermal shipping label
{ "size": "label_4_6_in",
  "elements": [{
    "type": "barcode",
    "format": "code128",
    "content": "1Z999AA10123456784" }]}
Сценарий транспортных этикеток
/03

Бесплатный визуальный редактор + API

Проектируйте PDF-шаблоны в бесплатном WYSIWYG-редакторе на https://studio.gpdf.com, затем генерируйте тот же DocumentRequest JSON через API. Без отдельного дизайн-формата и расхождений при передаче в продакшен.

// Studio and API share the same JSON
https://studio.gpdf.com
POST /api/v1/pdf/render
Открыть Studio
/04

JSON-нативная разметка

Определяйте страницы, координаты, элементы, стили, колонтитулы, фоны, водяные знаки и штампы напрямую в JSON. Координаты в миллиметрах, не приближения.

// inside elements[i]
"x_anchor": {
  "reference": "content_right",
  "offset": 6
}
/05

Таблицы, которые пагинируются

row_span между страницами, повторяющиеся заголовки, alternate_fill, составные двойные границы. Тот 1 %, который всегда ломается.

// inside table element
"pagination": {
  "keep_spans_together": true
}
/06

Векторные штрих-коды

30+ символик включая GS1-128, QR, PDF417, DataMatrix. Все векторные. Общая длина точна до 0,1 мм.

// 30+ formats: code128, qrcode, datamatrix, pdf417, ...
"type": "barcode",
"format": "code128",
"content": "INV-2026-001"
Почему вектор лучше растра
/07

PDF/A + вывод электронного счета

Генерируйте архивные PDF/A-профили и пакеты электронных счетов PDF/A-3b со встроенным CII XML для процессов Factur-X / ZUGFeRD. Одно поле активирует путь упаковки PDF/A-3b.

// top-level on DocumentRequest
"settings": {
  "profile": "pdfa-3b"
}
PDF/A и Factur-X простыми словами
/08

Типографика + резервные CJK-шрифты

Автоматический подбор резервных шрифтов и строгие режимы предотвращают тихое отсутствие глифов в документах на латинице, CJK, арабском RTL, индийских письменностях и с большим количеством emoji.

// inside style{}
"font_family": "NotoSans-Regular",
"font_mode": "prefer"
/09

Пароль и блокировки разрешений

Шифрование документа AES-128 или AES-256 плюс 8 блокировок разрешений (печать, изменение, копирование, аннотации, формы…). Pro: пароль на открытие. Enterprise: пароль владельца + контроль по каждому биту.

Печать · Изменение · Копирование · Заполнение форм — все 8 блокировок
  • Печать
  • Изменение содержимого
  • Копирование / извлечение текста и графики
  • Аннотации / изменение полей формы
  • Заполнение существующих форм
  • Извлечение для специальных возможностей
  • Сборка (вставка / поворот / удаление страниц, закладки)
  • Печать в высоком качестве
// inside settings
"security": {
  "open_password": "reader-demo",
  "owner_password": "owner-demo",
  "algorithm": "aes_128",
  "permissions": {
    "print": true,
    "modify": false,
    "copy": false
  }
}
Справочник settings.security
/10

Переменные + пагинация

{page} / {total_pages} разрешаются после layout. keep_together, widow/orphan, блоки page_break.

// element of type "variable"
{ "type": "variable",
  "name": "page",
  "scope": "system" }