Aller au contenu

Conformité PDF/X : l'output intent de production imprimée émis par NextPDF

Énoncé de périmètre. Un profil testé ne vaut pas certification.

Réserve de périmètre (à lire en premier). La norme ISO 15930 (la norme de la famille PDF/X) n’est pas dans le corpus de vérification de NextPDF. Cette page ne revendique pas de certification PDF/X-4 ou PDF/X-6 indépendante. NextPDF émet l’output intent de production imprimée et les mécanismes ICC dont les workflows PDF/X dépendent. NextPDF les vérifie au regard d’ISO 32000-2 §14.11.5 (le dictionnaire OutputIntent que l’ISO 15930 importe par référence) et de la structure de profil ICC.1 / ISO 15076-1. Savoir si un fichier donné est conforme à une partie PDF/X relève d’un outil de preflight de prépresse externe, pas de cette bibliothèque.

NextPDF Core émet un OutputIntent /GTS_PDFX qui référence un DestOutputProfile ICC embarqué lorsqu’un espace de travail à large gamut est sélectionné. NextPDF Core vérifie le profil ICC embarqué et impose la version 4. Ce sont les prérequis structurels vérifiés par un preflight PDF/X-4 / PDF/X-6. La bibliothèque produit ces artefacts ; un outil de preflight statue sur la conformité.

Fenêtre de terminal
composer require nextpdf/core:^3

La génération de l’output intent PDF/X est une capacité de Core pilotée par le OutputColorProfile du document. Aucun package Premium n’est requis pour l’OutputIntent GTS_PDFX lui-même.

NextPDF\Core\OutputColorProfile est le discriminateur d’espace de travail : DeviceRGB (par défaut, sans output intent à large gamut), DisplayP3, Rec2020, A98RGB, ProphotoRGB. Sélectionner un cas à large gamut active le chemin PdfWriter, qui émet, selon ISO 32000-2 §14.11.5 :

  • un dictionnaire /Type /OutputIntent /S /GTS_PDFX dans le tableau /OutputIntents du catalogue ;
  • un flux ICC embarqué en tant que DestOutputProfile (le profil d’espace de travail, par exemple display-p3-v4.icc) ;
  • les champs OutputConditionIdentifier / de registre exigés par le dictionnaire.

NextPDF\Graphics\ColorSpace\IccVersionTier vérifie le profil embarqué. V4 est requis pour les output intents PDF 2.0 / PDF/A-4 / PDF/X-6. requiresV4Strict() rejette un profil v2 afin qu’aucune revendication PDF/X-6 ne soit formulée avec un profil ICC non v4. C’est le prérequis structurel vérifié par un preflight PDF/X-6 — ce n’est pas le preflight lui-même.

SymboleEffet
OutputColorProfile (enum)Discriminateur d’espace de travail ; les cas à large gamut déclenchent l’émission de l’OutputIntent /GTS_PDFX.
OutputColorProfile::isWideGamut(): boolRenvoie vrai pour tout cas autre que DeviceRGB.
OutputColorProfile::iccFilename(): ?stringRenvoie la ressource de profil ICC embarqué correspondant au cas.
IccVersionTier::requiresV4Strict()Vérification qui rejette les profils ICC non v4 lorsqu’une structure PDF/A-4 / PDF/X-6 est revendiquée.
<?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";

Le pattern de production envoie la sortie vers un preflight de prépresse externe (l’outil de référence du workflow d’impression destinataire). Il traite le rapport de preflight comme le gate. NextPDF émet l’OutputIntent GTS_PDFX et l’ICC v4. L’outil de preflight tranche la conformité PDF/X-4 / PDF/X-6. NextPDF n’embarque pas de validateur PDF/X.

  • DeviceRGB n’émet aucun output intent PDF/X. Le profil par défaut reste strictement identique à la sortie historique et ne porte aucun OutputIntent /GTS_PDFX. Un workflow PDF/X doit sélectionner explicitement un profil à large gamut.
  • Un ICC v2 bloque une revendication PDF/X-6. requiresV4Strict() rejette un profil v2 ; ne formule pas de revendication de structure PDF/X-6 avec un profil ICC non v4.
  • Tons directs / surimpression. Les workflows PDF/X-1a/X-3 complets en CMJN + tons directs sortent du périmètre du chemin d’OutputIntent de Core. Cette page couvre uniquement l’output intent basé sur ICC de PDF/X-4 / PDF/X-6.
  • Aucune revendication de certification. L’émission de l’OutputIntent fournit un support structurel. La conformité PDF/X est un verdict de preflight, pas un état de la bibliothèque.

Un OutputIntent à large gamut ajoute un flux ICC embarqué (de taille fixe pour l’espace de travail) lors de save(). Budget : temps mur ≤ 1500 ms, pic mémoire ≤ 128 Mo.

Les output intents de production imprimée sont des métadonnées de gestion des couleurs, pas un mécanisme de sécurité. Le profil ICC embarqué est une donnée publique.

Résidence des données & mesures d’atténuation des PII

Section intitulée « Résidence des données & mesures d’atténuation des PII »

L’émission de l’OutputIntent se fait dans le processus courant. Seuls le document et le profil ICC embarqué sont écrits. Aucun contenu ne quitte le processus ; le profil ne porte aucune PII.

L’exemple ne journalise que le chemin de sortie et une indication de validation. Aucun octet du document n’est journalisé ; NEXTPDF_COOKBOOK_OUTPUT est respecté.

Un fichier PDF/X n’est pas un mécanisme de contrôle d’accès. L’OutputIntent garantit la reproductibilité des couleurs pour une condition d’impression, pas la confidentialité.

Le chemin d’OutputIntent PDF/X n’effectue aucune cryptographie. Le mode FIPS n’a aucun effet.

RevendicationNormeClausereference_id
Un OutputIntent référence un flux ICC DestOutputProfile pour la condition de rendu de sortie.ISO 32000-2§14.11.5
L’OutputIntent porte un OutputConditionIdentifier / une identification de registre.ISO 32000-2§14.11.5
Les output intents résident dans le tableau OutputIntents du catalogue du document.ISO 32000-2§14.11.5
Un profil ICC conforme porte un en-tête défini avec un champ de version.ICC.1 / ISO 15076-1§7
Le DestOutputProfile embarqué utilise la structure de profil ICC v4.ICC.1 / ISO 15076-1§7

ISO 15930 (PDF/X) n’est pas dans le corpus de vérification. Les revendications ci-dessus sont les prérequis ISO 32000-2 §14.11.5 + ICC.1 vérifiés par un preflight PDF/X. Les citations sont des pointeurs clause-id + reference_id vers le corpus de vérification (manifest). Aucun texte de norme n’est reproduit.