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

Соответствие PDF/X: выходной интент для печатного производства, формируемый NextPDF

О границах ответственности. Проверенный профиль — не сертификация.

Область применения (прочитайте сначала). ISO 15930 (стандарт семейства PDF/X) не входит в проверочный корпус NextPDF. На этой странице не заявляется независимая сертификация PDF/X-4 или PDF/X-6. NextPDF выводит выходной интент для печатного производства и механизмы работы с профилями International Color Consortium (ICC), необходимые процессам PDF/X. NextPDF проверяет эти структуры на соответствие требованиям ISO 32000-2 §14.11.5 (словарь OutputIntent, который ISO 15930 импортирует по ссылке) и структуре профиля ICC.1 / ISO 15076-1. Внешний инструмент предпечатной проверки, а не эта библиотека, определяет, соответствует ли файл части PDF/X.

NextPDF Core формирует выходной интент /GTS_PDFX, который ссылается на встроенный ICC-профиль DestOutputProfile, когда выбрано широкоохватное рабочее пространство. NextPDF Core допускает во встроенном ICC-профиле только версию 4. Эти элементы — структурные предпосылки, которые проверяет предпечатная проверка PDF/X-4 / PDF/X-6. Библиотека формирует их; соответствие определяет инструмент предпечатной проверки.

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

Формирование выходного интента PDF/X входит в возможности Core. Им управляет OutputColorProfile документа. Для самого выходного интента GTS_PDFX пакет Premium не нужен.

NextPDF\Core\OutputColorProfile выбирает рабочее пространство: DeviceRGB (по умолчанию, без широкоохватного интента), DisplayP3, Rec2020, A98RGB или ProphotoRGB. Когда вы выбираете любой широкоохватный вариант, PdfWriter формирует согласно ISO 32000-2 §14.11.5:

  • словарь /Type /OutputIntent /S /GTS_PDFX в массиве /OutputIntents каталога;
  • встроенный ICC-поток в качестве DestOutputProfile (профиль рабочего пространства, например display-p3-v4.icc);
  • поля OutputConditionIdentifier / реестра, требуемые словарём.

NextPDF\Graphics\ColorSpace\IccVersionTier контролирует встроенный профиль. V4 требуется для выходных интентов PDF 2.0 / PDF/A-4 / PDF/X-6. requiresV4Strict() отклоняет профиль v2, чтобы структура PDF/X-6 не заявлялась для ICC-профиля, не относящегося к v4. Это структурная предпосылка, которую проверяет предпечатная проверка PDF/X-6; сама по себе это не проверка.

СимволДействие
OutputColorProfile (enum)Дискриминатор рабочего пространства; широкоохватные варианты включают вывод выходного интента /GTS_PDFX.
OutputColorProfile::isWideGamut(): boolВозвращает True для любого варианта, отличного от DeviceRGB.
OutputColorProfile::iccFilename(): ?stringРесурс встроенного ICC-профиля для данного варианта.
IccVersionTier::requiresV4Strict()Проверка, отклоняющая ICC-профили, не относящиеся к v4, при заявлении структуры PDF/A-4 / PDF/X-6.
<?php
declare(strict_types=1);
require_once __DIR__ . '/vendor/autoload.php';
use NextPDF\Core\Config;
use NextPDF\Core\Document;
use NextPDF\Core\OutputColorProfile;
$out = getenv('NEXTPDF_COOKBOOK_OUTPUT') ?: __DIR__ . '/print.pdf';
$config = new Config(outputColorProfile: OutputColorProfile::DisplayP3);
$doc = Document::createStandalone($config);
$doc->setTitle('Print production sample');
$doc->writeHtml('<h1>Wide-gamut artwork</h1>');
$doc->save($out); // /GTS_PDFX OutputIntent + display-p3-v4.icc emitted here
echo "Wrote {$out} — run an external PDF/X preflight to validate.\n";

В продакшене передавайте результат во внешнюю предпечатную проверку — основной инструмент на стороне принимающего печатного процесса. Рассматривайте отчёт предпечатной проверки как контрольную точку. NextPDF выводит выходной интент GTS_PDFX и ICC v4. Инструмент предпечатной проверки принимает решение о соответствии PDF/X-4 / PDF/X-6. NextPDF не поставляет валидатор PDF/X.

  • DeviceRGB не формирует интент PDF/X. Профиль по умолчанию побайтово идентичен прежнему выводу и не содержит выходного интента /GTS_PDFX. Для процесса PDF/X необходимо явно выбрать широкоохватный профиль.
  • ICC v2 блокирует заявление о PDF/X-6. requiresV4Strict() отклоняет профиль v2; не заявляйте структуру PDF/X-6 для ICC-профиля, не относящегося к v4.
  • Плашечные цвета / наложение. Полные процессы PDF/X-1a/X-3 с CMYK и плашечными цветами выходят за рамки формирования OutputIntent в Core. Эта страница охватывает только выходной интент PDF/X-4 / PDF/X-6 на основе ICC.
  • Никакого заявления о сертификации. Вывод OutputIntent — структурная поддержка. Соответствие PDF/X — вердикт предпечатной проверки, а не состояние библиотеки.

Широкоохватный OutputIntent добавляет один встроенный ICC-поток при вызове save(). Его размер фиксирован для каждого рабочего пространства. Бюджет: общее время ≤ 1500 мс, пик ≤ 128 МБ.

Выходные интенты для печатного производства — это метаданные управления цветом, а не механизм безопасности. Встроенный ICC-профиль содержит общедоступные данные.

Формирование OutputIntent выполняется внутри процесса. Записываются только документ и встроенный ICC-профиль. Содержимое не покидает процесс; профиль не содержит персонально идентифицируемой информации (PII).

Безопасная телеметрия и очистка журналов

Заголовок раздела «Безопасная телеметрия и очистка журналов»

Пример записывает в журнал только путь к выходному файлу и подсказку по валидации. Байты документа в журнал не записываются; переменная NEXTPDF_COOKBOOK_OUTPUT учитывается.

Файл PDF/X сам по себе не получает контроль доступа. OutputIntent обеспечивает воспроизводимость цвета для условий печати, а не конфиденциальность.

Путь OutputIntent для PDF/X не выполняет криптографических операций. Режим FIPS на него не влияет.

ЗаявлениеСпецификацияПунктreference_id (идентификатор ссылки)
OutputIntent ссылается на ICC-поток DestOutputProfile для условия выходного отображения.ISO 32000-2§14.11.5
OutputIntent содержит OutputConditionIdentifier / идентификацию реестра.ISO 32000-2§14.11.5
Выходные интенты находятся в массиве OutputIntents каталога документа.ISO 32000-2§14.11.5
Соответствующий ICC-профиль имеет заданный заголовок с полем версии.ICC.1 / ISO 15076-1§7
Встроенный DestOutputProfile использует структуру профиля ICC v4.ICC.1 / ISO 15076-1§7

ISO 15930 (PDF/X) не входит в проверочный корпус. Приведённые выше заявления — предпосылки ISO 32000-2 §14.11.5 + ICC.1, которые проверяет предпечатная проверка PDF/X. Ссылки — указатели clause-id + reference_id в проверочном корпусе (манифест). Текст стандартов не воспроизводится.