Перейти к содержимому
getnextpdf.com

Pro редакция

Задание печати

NextPDF Pro создаёт задания печати XJDF (XML JDF 2.0) для производственных процессов печати: метаданные задания, спецификация носителя, цветовое намерение, операции финишной обработки, приоритет и число копий.

Эта возможность поставляется в NextPDF Pro (nextpdf/pro) и активируется лицензионным конвертом уровня Pro. Развёртывание без такого права не загружает классы этой возможности. Print Job не несёт отдельного пофункционального лицензионного флага. Сравнить редакции и получить лицензию.

Окно терминала
composer require nextpdf/pro:^3

Система производственной печати потребляет задание печати, которое описывает, как изготовить заказ. NextPDF Pro выдаёт документ XJDF 2.1 с помощью текучего построителя:

  • XjdfJobTicket — построитель. Задайте идентификатор и имя задания, приоритет, носитель, цвет, финишную обработку и число копий, затем сериализуйте в XML-документ XJDF 2.1.
  • MediaSpec — неизменяемые свойства носителя: тип, ширина и высота в миллиметрах, плотность в г/м², покрытие и цвет. По умолчанию — белая бумага A4.
  • ColorSpec, FinishingSpec, JobPriority — цветовое намерение, операции финишной обработки и перечисление приоритета.

Сгенерированный XML следует упрощённой структуре XJDF 2.1. Модуль создаёт задание; он не передаёт его контроллеру печатной машины или устройству.

Print Job создаёт задание и на этом останавливается. Он никогда не отправляет задание и не отрисовывает поток печати. Эта граница проведена намеренно. Документ XJDF — это переносимое описание намерения (носитель, цвет, финишная обработка, приоритет, копии), которое потребляет и исполняет нижестоящий контроллер печатной машины. Сохранение модуля как чистого сериализатора позволяет одному заданию управлять высокотиражным производственным прогоном, не связывая ваш код с протоколом устройства. Объекты спецификации неизменяемы, поэтому одинаковые входные данные всегда дают одно и то же задание, что делает вывод пакета воспроизводимым.

Проектный контекст: Генерация документов большими объёмами.

КлассОтветственность
XjdfJobTicketТекучий построитель задания печати XJDF 2.1.
MediaSpecФизические свойства носителя.
ColorSpecЦветовое намерение.
FinishingSpecОперации финишной обработки.
JobPriorityПеречисление приоритета.
use NextPDF\Pro\PrintJob\XjdfJobTicket;
$xml = (new XjdfJobTicket())
->setJobId('JOB-1001')
->setJobName('Quarterly report')
->toXml();
use NextPDF\Pro\PrintJob\{XjdfJobTicket, MediaSpec, JobPriority};
$xml = (new XjdfJobTicket())
->setJobId($jobId)
->setPriority(JobPriority::High)
->setMedia(new MediaSpec(mediaType: 'Paper', widthMm: 297.0, heightMm: 420.0))
->setCopies(500)
->toXml();
$logger->info('printjob.ticket_built', ['job_id' => $jobId]);
  • Сериализуйте через toXml(); когда идентификатор задания пуст, он генерирует уникальный идентификатор, а не завершается ошибкой.
  • setCopies() отклоняет число копий меньше 1.
  • Размеры носителя задаются в миллиметрах; преобразуйте из пунктов перед передачей.
  • Вывод — это документ задания, а не отрисованный поток печати.

Построение задания выполняется за постоянное время относительно размера документа; оно зависит только от настроенных ресурсов.

Построитель выдаёт XML из переданных вами значений. Очищайте имена и идентификаторы заданий из внешних источников перед построением.

ПоведениеСсылкаСтатус
Структура задания печати XJDF 2.1XJDF 2.1 (CIP4)Согласовано (упрощённое подмножество)
  • XjdfJobTicket — это текучий построитель для идентификатора и имени задания, приоритета, носителя, цвета, финишной обработки и числа копий, сериализующий в упрощённый XML-документ XJDF 2.1 через toXml(). setCopies() отклоняет число копий меньше 1; пустой идентификатор задания генерируется автоматически.
  • MediaSpec несёт неизменяемые свойства носителя (тип, ширина/высота в миллиметрах, плотность в г/м², покрытие, цвет) и по умолчанию — белая бумага A4.
  • ColorSpec, FinishingSpec и JobPriority описывают цветовое намерение, операции финишной обработки и приоритет.
  • Модуль создаёт только документ задания. Он не отрисовывает поток печати и не передаёт задание контроллеру печатной машины или устройству.

Enterprise не меняет поведение Print Job. Enterprise добавляет возможности более высокого уровня, документированные отдельно; они не требуются для построения задания печати XJDF.

Эквивалента генерации заданий печати XJDF 2.1 в Core нет. Это дополнение Pro.

Эта страница документирует только внешне наблюдаемое поведение и поддерживаемую публичную поверхность API. Внутренние пути пространств имён, вспомогательные классы, таблицы механизмов, имена файлов runbook и префиксы заданий выходят за рамки.