PDFreactor: подробный обзор генератора PDF из HTML, CSS и XML
PDFreactor относится не к привычным PDF-редакторам и не к программам для чтения документов, а к классу серверных движков вёрстки. Он получает HTML или XML, применяет CSS, при необходимости исполняет JavaScript и формирует PDF, рассчитанный на автоматическое производство счетов, отчётов, каталогов, архивных и доступных документов. Поэтому оценивать PDFreactor разумно по точности пагинации, поддержке печатных стандартов, интеграции с приложениями, безопасности загрузки ресурсов и условиям серверного лицензирования, а не по удобству ручного редактирования готового файла.
| Параметр | Актуальные сведения |
|---|---|
| Разработчик | RealObjects GmbH, Германия |
| Актуальная версия | 12.7.1; на странице загрузки опубликована 17 августа 2026 года |
| Назначение | Автоматическое преобразование HTML/XML в PDF и, при наличии опции, растровые изображения |
| Основные варианты | PDFreactor Web Service и PDFreactor Library |
| Платформы | Windows 10/11, Windows Server 2016/2019/2022, Linux, macOS |
| Интеграция | REST/SOAP, клиенты для Java, .NET, JavaScript, Node.js, PHP, Python и Ruby; Java Library |
| Лицензия | Коммерческая подписка Pro, Premium или Cluster; 30-дневная оценка |
| Тип обработки | В штатном развёртывании — на собственной инфраструктуре; отдельный облачный endpoint предназначен для оценки |
Скачать PDFreactor
Новейшая версия для Виндовс, macOS и Линукс. Удобный редактор PDF под российские реалии.
Безопасный путь получения — официальный раздел загрузок PDFreactor. На 12 сентября 2026 года там указана версия 12.7.1. Для Web Service доступны 64-разрядный установщик Windows, Linux Archive, RPM и установщик macOS; отдельно публикуются WAR и клиентские библиотеки. Для Library предлагаются пакеты Windows, Linux и macOS, JAR-компоненты, а для контейнерного развёртывания — официальный образ realobjects/pdfreactor.
Web Service выбирают, когда генератор должен работать отдельным сервисом и вызываться из разных языков. Library встраивается в Java-приложение. Сторонние «portable»-сборки здесь не дают преимуществ: лицензирование, миграции и обновления опираются на официальную поставку.
Установщики Windows и macOS также ставят PDFreactor Preview — вспомогательную программу для оценки и разработки. Она быстро конвертирует и показывает результат, но разработчик не рекомендует использовать её вместо полноценной production-интеграции.
Что такое PDFreactor
PDFreactor разрабатывает RealObjects GmbH из Саарбрюккена. Это коммерческий движок автоматической публикации: исходником служит HTML или XML, оформление задаётся CSS, а результат формируется программно. Такая модель рассчитана на счета, отчёты, каталоги и другие документы, которые должны выпускаться из шаблона без ручной верстки каждого экземпляра.
PDFreactor Web Service — RESTful on-premise сервис с клиентами для Java, .NET, JavaScript, Node.js, PHP, Python и Ruby, а также универсальными REST и SOAP интерфейсами. PDFreactor Library — Java-библиотека для выполнения конвертации внутри JVM. Продукт активно поддерживается: текущая 12.7.1 вышла в августе 2026 года после 12.7, где были усилены безопасные настройки Web Service.
Карта критических зависимостей
• Java. Для нового развёртывания предпочтительны Java 17+ и рекомендованный OpenJDK 21.
• Шрифты и библиотеки. На Linux нужен fontconfig; итоговая верстка зависит от доступных движку шрифтов.
• Ресурсы шаблона. CSS, изображения, веб-шрифты и скрипты должны быть доступны процессу и разрешены сетевыми правилами.
• Лицензия. Production требует действующего ключа; механизм контроля лицензии может временно соединяться с сервисом RealObjects.
• Сервисная инфраструктура. Web Service требует корректных портов, API key, мониторинга и лицензии нужного уровня при масштабировании.
• Опции. Raster Image Output является дополнительной возможностью и должен быть предусмотрен конкретной лицензией.
PDFreactor не является просмотрщиком, OCR-системой или интерактивным редактором готового PDF. Для сканов сначала нужен OCR-инструмент, например ABBYY FineReader, а PDFreactor подключают уже на этапе автоматической публикации.
Основные функции PDFreactor
HTML5, CSS и пагинация
PDFreactor переносит HTML5 и CSS в страничную модель: поддерживает правила для печатных страниц, колонки, таблицы, плавающие элементы, сноски и боковые примечания, нумерацию, колонтитулы, перекрёстные ссылки и автоматическое содержание. Разрывы страниц и поведение элементов при переносе управляются CSS, поэтому результат ближе к издательской вёрстке, чем к снимку окна браузера.
Поддерживаются Flexbox, CSS Grid, веб-шрифты, SVG, Canvas, сложные письменности и двунаправленный текст. Font fallback позволяет подставлять шрифты при отсутствии нужного глифа, но сами файлы шрифтов должны быть доступны серверу.
JavaScript и динамический контент
В HTML можно выполнять JavaScript. Основной движок — GraalJS с поддержкой синтаксиса ECMAScript 2023; старый Rhino оставлен как совместимый режим и значительно ограниченнее. Для XML JavaScript не выполняется: его обрабатывают через CSS, XSLT или предварительную трансформацию.
JavaScript пригоден для Canvas, расчётных таблиц и диаграмм; официально заявлена работа с Highcharts, amCharts и MathJax. Однако PDFreactor — не Chromium, поэтому сценарии, завязанные на интерактивность и специфические Web API, нужно проверять отдельно.
PDF/A, PDF/UA и PDF/X
Движок формирует PDF/A для архива, PDF/UA-1 для доступности и PDF/X для полиграфии. Официально перечислены PDF/A-1a/1b, 2a/2b/2u и 3a/3b/3u; руководство описывает и профили PDF/X, включая PDF/X-4 и PDF/X-4p. Выбранный профиль может запрещать несовместимые возможности обычного PDF.
При PDF/UA теги строятся из HTML-семантики, CSS, ARIA и фактической раскладки. Автоматизация не заменяет качественный исходник: заголовки, подписи, alt-тексты, язык и порядок чтения должны быть заданы правильно. Встроенная валидация PDF/A и PDF/UA на крупных документах увеличивает время операции.
Формы и функции готового PDF
HTML-формы преобразуются в интерактивные PDF-формы. Поддерживаются ссылки, закладки, метаданные, вложения, комментарии, viewer preferences, шифрование, ограничения прав и цифровая подпись сертификатом X.509. Существующие PDF можно присоединять или накладывать через функции merge/overlay, но это не полноценное ручное редактирование чужого PDF.
Печать и растровый экспорт
Для допечатной подготовки есть CMYK, плашечные цвета, output intent, bleed и печатные метки. Дополнительная опция Raster Image Output создаёт PNG, JPEG, GIF, TIFF и другие поддерживаемые растровые варианты для превью; её наличие необходимо сверять по лицензии.
Сетевая безопасность и приватность
При обычном развёртывании Web Service и Library работают на инфраструктуре заказчика, поэтому исходный документ не требуется отправлять в облачный конвертер RealObjects. Однако PDFreactor сам загружает ресурсы, на которые ссылается HTML: изображения, CSS, шрифты, JavaScript и удалённые страницы. Для конфиденциальных задач важно учитывать не только место установки движка, но и все внешние URL шаблона.
В 12.7 безопасные значения по умолчанию были ужесточены: Web Service блокирует обращения к Local addresses во время конвертации, а API рассматривается как недоверенный контекст. Администратор может ограничивать разрешённые типы адресов, протоколы и доступ к файловой системе. Если внутренний ресурс действительно необходим, документация рекомендует разрешать точный адрес или порт вместо широкого снятия ограничений.
API key защищает клиентские запросы, admin key — административный Monitoring API. Отдельная настройка позволяет скрывать сведения о версии сервера, а debug-логи не следует прикладывать к пользовательскому PDF без необходимости: они могут содержать техническую информацию об окружении. При этом лицензия допускает временное сетевое соединение с сервисом RealObjects для механизмов активации и контроля, что нужно учитывать в закрытых сетях.
Интерфейс и удобство использования
У PDFreactor нет интерфейса уровня Acrobat: основная рабочая среда — API, конфигурация сервера, HTML/XML/CSS и логи. Для веб-разработчика модель проста: приложение передаёт документ и параметры, получает PDF и анализирует сообщения конвертации.
Preview на Windows и macOS помогает быстро проверять шаблоны, а Inspector показывает DOM Tree, Page Tree и сам PDF, связывая исходные элементы с боксами страничной раскладки. Fiddle удобен для небольших экспериментов с HTML, CSS и JavaScript. Инспектируемый режим увеличивает расход ресурсов, поэтому его не следует оставлять в массовой очереди.
Администраторам Web Service доступен RESTful Monitoring API с очередью, выполняемыми конвертациями и состоянием сервера. Для мониторинга нужен admin key, а клиентский доступ вне защищённого localhost рекомендуется ограничивать API key.
Базовый шаблон осваивается быстро, но сложные колонтитулы, PDF/UA, PDF/X, безопасность ресурсов и высоконагруженное развёртывание требуют CSS Paged Media и серверных навыков. Официальная документация и инструменты разработки англоязычные; отдельная русская локализация не заявлена.
Поддерживаемые форматы и совместимость
Основные входы — HTML и XML. HTML может включать CSS и JavaScript; XML оформляется CSS или трансформируется XSLT. Исходник передаётся содержимым либо адресом локального или удалённого ресурса. Одна операция обрабатывает один основной HTML/XML-документ, поэтому пакет самостоятельных файлов запускают серией конвертаций.
Внутри шаблона используются PNG, JPEG, TIFF, BMP, GIF, SVG/SVGZ и поддерживаемые варианты WebP; PDF-страницы можно подключать как графические объекты. Доступны локальные и веб-шрифты при наличии у процесса прав на их чтение.
Основной выход — PDF: обычный, PDF/A, PDF/UA, PDF/X, защищённый, подписанный или с интерактивными формами. При лицензированной опции доступен растровый вывод. Обратного преобразования PDF в Word, Excel или EPUB нет.
Web Service имеет клиенты Java, .NET, JavaScript, Node.js, PHP, Python и Ruby, Generic REST/SOAP; Library ориентирована на Java, а для shell-сценариев есть командное приложение. Если исходник прежде нужно править как офисный документ, удобнее использовать LibreOffice, а затем переводить процесс на шаблоны.
Производительность и стабильность
Скорость PDFreactor зависит от структуры исходника, а не только от числа страниц. Большие изображения, тысячи DOM-узлов, тяжёлые таблицы, JavaScript, тени и растеризация, сетевые запросы и проверка PDF/A/PDF/UA заметно увеличивают время и память. Поэтому производительность измеряют на собственных шаблонах и отдельно подбирают JVM heap и параллелизм.
Руководство предупреждает: необычно долгая работа и высокая загрузка CPU могут указывать на нехватку памяти. При OutOfMemory Web Service или контейнер способен завершиться; типовые меры — увеличить обоснованный heap или снизить число одновременных заданий. Для контейнера нужен явный health check, поскольку статус running сам по себе не гарантирует работоспособность сервиса.
Лицензия тоже ограничивает конкурентность: Pro разрешает до 4 одновременных PDF-конвертаций на одной JVM/instance, Premium — до 16, Cluster — без такого числового лимита внутри лицензированного кластера и Named Application. Это лицензионная метрика, а не гарантия производительности любого сервера.
Хотфикс 12.7.1 исправил исключения при объединении PDF с очень большим числом закладок, сбой asset package с append и дефект inset box-shadow при высоком supersampling. В production после обновления стоит сравнивать эталонные документы по страницам, таблицам, шрифтам, ссылкам и профилям соответствия, а не ограничиваться успешным HTTP-ответом.
В версии 12 используются HTTP-кэш и HTTP/2, что снижает повторные затраты на сетевые ресурсы в подходящих сценариях. Обратная сторона — результат должен оставаться воспроизводимым: версии шаблонов, шрифтов и критических внешних ресурсов лучше фиксировать, иначе два успешных запуска могут получить разное содержимое не из-за PDFreactor, а из-за изменившегося источника.
Лицензирование и версии
PDFreactor распространяется коммерчески. Для новых внедрений основная модель — подписка Pro, Premium или Cluster, отдельно для Web Service и Library. Прайс-лист, действующий с 1 марта 2026 года, указывает одинаковые годовые цены для обеих веток: Pro — 1908 USD/EUR, Premium — 4788 USD/EUR, Cluster — 15 588 USD/EUR без налогов.
| Уровень | Развёртывание | SaaS | 1 год |
|---|---|---|---|
| Pro | До 4 одновременных конвертаций, 1 JVM, 1 instance | Только внутреннее использование | 1908 USD / 1908 EUR |
| Premium | До 16 конвертаций, 1 JVM, 1 instance | Ограниченно разрешён | 4788 USD / 4788 EUR |
| Cluster | Неограниченно в одном кластере для одного Named Application | Ограниченно разрешён | 15 588 USD / 15 588 EUR |
Подписка включает поддержку, maintenance-релизы, обновления и переход на следующую major-версию в течение оплаченного периода. После его окончания право использования прекращается, а соглашение указывает, что ПО автоматически перестаёт функционировать. Это делает срок продления эксплуатационным параметром.
Premium и Cluster не разрешают безусловно продавать универсальный HTML-to-PDF сервис. Допустимый SaaS должен оставлять генерацию второстепенной функцией, не давать конечному пользователю существенного контроля над макетом и не выставлять наружу API PDFreactor. Иные модели требуют согласования. Бессрочная лицензия в ветке 12 обозначена только как вариант, доступный при определённых апгрейдах старых лицензий; OEM и Enterprise лицензируются отдельно.
Пробный режим
Trial key действует 30 дней и открывает полный функционал без технических ограничений, но evaluation watermark остаётся. Ключ убирает отдельную оценочную страницу. При оценочном запуске без купленной лицензии readme описывает водяные знаки на каждой странице и отдельное уведомление; этот режим разрешён только для тестирования. Постоянного бесплатного production-тарифа нет, а коммерческая эксплуатация требует действующей лицензии.
Системные требования
Windows
Readme 12.7.1 перечисляет Windows 10/11 и Windows Server 2016/2019/2022 с актуальными обновлениями. Пакеты Windows — 64-разрядные. Web Service по умолчанию запускается от Local Service, поэтому доступ к локальным файлам определяется правами этой учётной записи.
Linux
Linux поддерживается официально. Обязателен fontconfig; для растрового вывода нужны также графические зависимости, включая libpng и libfreetype. Web Service на Unix/Linux требует отдельно установленную Java VM. После установки важно проверить права системного пользователя на шаблоны и шрифты.
macOS
Для macOS есть отдельный установщик. При выборе Jetty Application Server сервис регистрируется как LaunchDaemon под пользователем _pdfreactor, поэтому локальные ресурсы должны быть доступны этой учётной записи.
Java
RealObjects рекомендует OpenJDK 21. Readme 12.7.1 ещё перечисляет более старые JVM, но Java до 17 имеет ограничения: основной GraalJS недоступен, хуже поддерживаются emoji, сложные письменности и отдельные OpenType-варианты. Для нового проекта разумно использовать Java 17+ и предпочтительно OpenJDK 21.
Единого минимального объёма RAM для всех документов нет: расход определяется шаблоном и параллелизмом. Размер heap подбирают на реальных заданиях; Library может работать в headless-режиме Java.
Преимущества и недостатки PDFreactor
Плюсы и минусы
• Глубокая поддержка CSS для страничной вёрстки, включая колонтитулы, нумерацию, сноски, сложные таблицы, Grid и Flexbox.
• Современный JavaScript-движок GraalJS с синтаксисом ECMAScript 2023 для динамических HTML-шаблонов.
• Профессиональные профили PDF/A, PDF/UA и PDF/X, а также теги доступности, формы, закладки, подписи, шифрование и допечатные функции.
• Два режима интеграции: языконезависимый on-premise Web Service и Java Library.
• Официальные клиенты для основных серверных языков, REST/SOAP и готовый Docker-образ.
• Inspector, Fiddle, мониторинг и подробная документация упрощают диагностику сложной автоматической вёрстки.
• Производственные документы можно обрабатывать на собственной инфраструктуре без обязательной отправки исходного содержимого в облачный конвертер поставщика.
Минусы
• Высокая стоимость по сравнению с бесплатными библиотеками и простыми настольными PDF-инструментами.
• Подписка прекращает право работы продукта после окончания периода; это требует контролировать продление в эксплуатации.
• Pro ограничен четырьмя, Premium — шестнадцатью одновременными конвертациями на лицензированную JVM/instance.
• Не является PDF-редактором, OCR-системой или просмотрщиком; готовый PDF нельзя править в нём как в настольном редакторе.
• Точный результат зависит от шрифтов, сетевой доступности ресурсов, Java и настроек безопасности; перенос браузерного проекта в печать иногда требует адаптации CSS и JS.
• Ограничения SaaS требуют внимательно сопоставлять бизнес-модель сервиса с лицензией.
• Разработчикам без опыта CSS Paged Media понадобится время на освоение профессиональной типографской модели.
Сравнение с аналогами
Прямые конкуренты PDFreactor — движки автоматической публикации из HTML/XML, а не обычные PDF-редакторы. Сравнивать полезно по входным форматам, API, печатным стандартам и роли JavaScript.
| Решение | Вход и интеграция | PDF-стандарты | JavaScript | Оптимальная роль |
|---|---|---|---|---|
| PDFreactor | HTML/XML; REST/SOAP, клиенты, Java Library | PDF/A, PDF/UA, PDF/X | GraalJS, ECMAScript 2023 | Корпоративная HTML-публикация и серверная автоматизация |
| Prince | HTML/XML; CLI, GUI, серверные обёртки | PDF/A, PDF/UA-1, PDF/X | Есть; документация ориентирована на ES5, ES6 неполный | Печатная HTML/XML-вёрстка и собственный CSS-стек Prince |
| Antenna House Formatter | XML/HTML, XSL-FO/CSS; CLI, Java, .NET, COM, C/C++ | PDF/A, PDF/UA, PDF/X | Не основной акцент | DITA/XSL-FO и крупные структурированные публикации |
| WeasyPrint | HTML/CSS; Python API и CLI | PDF/A и PDF/UA варианты | Не полноценный браузерный движок | Открытый BSD/Python-пайплайн |
| Sumatra PDF | Открывает готовые документы в Windows | Просмотр, не генерация | Не применимо | Быстрое чтение и визуальная проверка результата |
Prince наиболее близок по концепции, но его документированный JavaScript заметно консервативнее. Antenna House Formatter сильнее там, где основой процесса являются XML, DITA и XSL-FO. WeasyPrint бесплатен под BSD и хорошо вписывается в Python, однако документация прямо предупреждает, что валидность специализированного PDF-профиля зависит от корректности исходника и выбранных функций.
Sumatra PDF не конкурирует с PDFreactor: первый читает готовые файлы, второй их генерирует. Для ручного изменения уже выпущенного PDF уместнее Adobe Acrobat Pro или PDF-XChange Editor; для локальных бытовых операций без серверной интеграции — PDF24 Creator.
Инструкция по установке
Windows: Web Service
1. Скачать с официальной страницы PDFreactor Web Service Windows 64 bit Installer версии 12.7.1 и принять лицензионное соглашение.
2. Установить серверный компонент. По умолчанию Web Service доступен на localhost:9423, REST API — в /service/rest.
3. Если шаблоны читают локальные файлы, дать Local Service доступ только к необходимым каталогам.
4. Установить trial key или production-ключ. При доступе сервиса из сети настроить API key.
5. Сделать эталонную конвертацию и проверить шрифты, изображения, страницы и лог.
Linux: архив или RPM
1. Установить поддерживаемую Java, предпочтительно OpenJDK 21, и fontconfig; для image output проверить графические зависимости.
2. Скачать Linux Archive или RPM нужной ветки. Для Web Service после установки использовать pdfreactorwebservice start, stop и status из каталога bin.
3. Проверить права пользователя сервиса на шаблоны и шрифты, затем доступность localhost:9423.
4. Перед сетевым использованием включить API key, необходимые security rules и мониторинг.
macOS
Используется официальный installer. При выбранном Jetty Application Server Web Service регистрируется как LaunchDaemon под _pdfreactor; доступ к локальным ресурсам нужно выдавать именно этому пользователю. Preview оставляют для разработки, а production обращается к Library или Web Service.
Library и командная строка
1. Для Java-интеграции скачать пакет PDFreactor Library и использовать pdfreactor.jar с требуемыми зависимостями либо self-contained pdfreactor-uber.jar.
2. Проверить JVM: для нового проекта предпочтителен OpenJDK 21. На сервере без графической среды включить headless-режим Java.
3. Подключить лицензионный ключ и выполнить один из официальных sample-документов, затем собственный эталонный шаблон.
4. Для shell-сценария использовать command-line приложение из uber-JAR; отдельная установка графического интерфейса для этого не нужна.
Docker
Официальный образ — realobjects/pdfreactor. Пример разработчика: docker run -d -p 8080:9423 realobjects/pdfreactor, то есть сервис внутри контейнера на 9423 доступен через 8080 хоста. Для production отдельно задают постоянную конфигурацию, ключ, health check, память и сетевые правила.
Первый запуск и удаление
До production проверяют версию, ключ, API key, сетевые ограничения, шрифты и доступ к исходникам. Отладочные вложения и лишние логи лучше отключить. Перед удалением останавливают сервис, сохраняют собственные конфигурации и шаблоны, затем используют штатный деинсталлятор или пакетный менеджер. На macOS пользователь _pdfreactor удаляется при деинсталляции.
Обновление с запасным выходом
1. Сохранить прежний каталог установки и изменённые конфигурации — это рекомендует readme.
2. Прочитать Migration Guide для своей версии и развернуть обновление сначала в staging.
3. Сравнить эталонные PDF по страницам, шрифтам, ссылкам, формам и профилям соответствия.
4. При переходе на 12.7 учесть блокировку Local addresses по умолчанию; при необходимости разрешать только конкретный localhost-порт.
5. Переключать production после проверки, сохранив возможность вернуть прежнюю конфигурацию в пределах действующей лицензии.
Практические кейсы
Счёт или акт из HTML-шаблона
Цель. Выпускать однотипные документы из данных приложения. Подготовка. Семантический HTML, CSS страницы, корпоративные шрифты и локальные ресурсы. Шаги. Подставить данные, передать HTML в Web Service/Library, задать поля, колонтитулы и перенос таблиц, сохранить PDF под ID документа. Проверка. Сверить номер, суммы, страницы, шрифты и лог. Ограничение. Доступ к приватным API во время рендеринга должен быть явно разрешён; надёжнее передавать данные заранее.
Отчёт с JavaScript-диаграммами
Цель. Перенести веб-отчёт с графиками в PDF. Подготовка. Зафиксировать JS-библиотеки и убрать интерактивные элементы. Шаги. Выполнить код через GraalJS, рендерить Canvas/SVG, CSS Paged Media использовать для заголовков, содержания и разрывов. Проверка. Сверить легенды, подписи, цвета и внутренние ссылки. Ограничение. Браузерные API могут потребовать адаптации.
Доступный архивный PDF
Цель. Совместить доступность и архивное хранение. Подготовка. Корректные HTML-заголовки, списки, таблицы, alt, язык и подписи полей. Шаги. Включить PDF/UA-1 и совместимый PDF/A, встроить шрифты и выполнить валидацию. Проверка. Дополнительно использовать независимый валидатор и проверить порядок чтения. Ограничение. Автоматическое тегирование не исправляет неверную семантику источника.
Полиграфический PDF/X-4
Цель. Формировать каталог для типографии из базы данных. Подготовка. Согласовать формат, bleed, output intent, цвета и шрифты. Шаги. Настроить CSS страницы и печатные метки, выбрать PDF/X-4 и создать файл. Проверка. Выполнить независимый preflight, проверить page boxes и шрифты. Ограничение. Несовместимые с PDF/X функции нужно устранять в шаблоне.
Навигатор по сбоям
| Симптом | Проверка | Решение | Контроль |
|---|---|---|---|
| После 12.7 не грузится localhost | SecuritySettings, адрес и порт | Разрешить только нужный localhost-порт | Ресурс доступен без расширения сетевых прав |
| Сервис не читает локальный файл | Права Local Service, _pdfreactor или Linux-пользователя | Дать чтение только нужному каталогу | Файл загружается без лишних разрешений |
| Долгая работа и высокий CPU | Heap, конкурентность, JS, изображения, растеризация | Снизить параллелизм, увеличить heap, упростить тяжёлый эффект | Задание укладывается в лимит ресурсов |
| JavaScript отличается от браузера | API, момент выполнения, ресурсы | Изолировать пример в Fiddle/Inspector | Результат воспроизводим без интерактивного браузера |
| Не проходит PDF/A или PDF/UA | HTML-семантика, alt, язык, шрифты, метаданные | Исправить источник и повторить валидацию | Проходит внутренний и независимый валидатор |
Контроль перед сохранением и передачей
• В логе нет fatal/error и сообщений о потерянных CSS, изображениях или шрифтах.
• Совпадают число страниц, ключевые таблицы, начало и конец документа; нет обрезанного содержимого.
• Проверены ссылки, закладки, формы и вложения, если они требуются.
• PDF/A, PDF/UA или PDF/X прошёл нужную валидацию.
• Файл открывается во втором просмотрщике, например Sumatra PDF.
• Нет evaluation watermark, debug-вложений и лишнего server log.
• Метаданные, язык и имя файла соответствуют бизнес-процессу.
• Для конфиденциального PDF отдельно проверены пароль, шифрование и ограничения прав.
Часто задаваемые вопросы
PDFreactor работает в облаке?
Основные коммерческие варианты рассчитаны на свою инфраструктуру: Web Service устанавливается on-premise, Library работает внутри Java-приложения. В REST API указан cloud.pdfreactor.com как Evaluation Cloud Service. При локальном развёртывании исходные документы не нужно отправлять в облако поставщика, но HTML может обращаться к внешним ресурсам, а лицензионный механизм — временно к RealObjects.
Можно ли использовать PDFreactor без интернета?
Локальные HTML, CSS, изображения и шрифты рендерятся на собственной машине. Полностью автономную работу гарантировать нельзя: соглашение допускает временное соединение для активации/контроля лицензии, а шаблон может ссылаться на HTTP-ресурсы. Для изолированной сети условия активации лучше согласовать заранее.
Можно ли сделать PDF из URL?
Да. Движок загружает удалённый HTML по HTTP/HTTPS, если адрес разрешён правилами безопасности. Для защищённых источников поддерживаются credentials, headers и cookies. Когда URL поступает от недоверенного пользователя, разрешённые адреса и протоколы следует ограничивать.
Поддерживается ли русский текст?
Да, при наличии подходящего Unicode-шрифта. Официальные инструменты и документация англоязычные, но кириллица в документе поддерживается как обычный Unicode-текст. В кластере важно установить одинаковые версии шрифтов на всех узлах.
Можно ли редактировать полученный PDF?
Не как в настольном редакторе. Штатный цикл — изменить данные, HTML/CSS или XML и заново сгенерировать PDF. Ручные правки уже выпущенного файла делают отдельным PDF-редактором.
Есть ли бесплатная версия?
Постоянного бесплатного production-тарифа нет. 30-дневный trial открывает функции без технических ограничений, но оставляет evaluation watermark. Коммерческая эксплуатация требует действующей лицензии.
Чем Web Service отличается от Library?
Web Service — отдельный RESTful сервер для разных языков и процессов. Library работает внутри Java-приложения. Для смешанного технологического стека обычно удобнее Web Service; для единого Java-процесса Library позволяет обойтись без отдельного HTTP-сервиса.
Может ли PDFreactor заменить Chromium/Puppeteer?
Только если приоритет — печатный PDF. PDFreactor специализирован на пагинации, PDF/A, PDF/UA и PDF/X, но не обязан воспроизводить все Web API интерактивного браузера. Выбор зависит от того, нужна ли браузерная идентичность или документная типографика.
Вывод
PDFreactor 12.7.1 подходит организациям, которые программно выпускают PDF из HTML/XML и требуют управляемой пагинации, доступности, архивных профилей, полиграфии и on-premise развёртывания. Сильная сторона — сочетание HTML/CSS, GraalJS, PDF/UA/PDF/A/PDF/X и Web Service с клиентами для разных языков.
Для чтения, OCR, единичного домашнего экспорта или ручной правки чужого PDF серверная архитектура и цена избыточны. В таких задачах разумнее Sumatra PDF, OCR-система или настольный редактор; для открытого Python-проекта стоит сравнить WeasyPrint. PDFreactor раскрывается там, где документы массово создаются из контролируемых шаблонов и должны соответствовать профессиональным требованиям.