Couleur, profils, et pourquoi ton rouge n'est pas mon rouge
Spec: ISO 32000-2, §8.6ISO 32000-2 §8.6Spec: ISO 15930, PDF/XISO 15930 PDF/X
Une couleur dans un PDF n’est pas une sensation figée. C’est une instruction, et savoir si cette instruction produira le même rouge sur ton portable, sur un téléphone et sur une presse d’imprimerie dépend entièrement de la façon dont la couleur a été décrite. Cette page traite de la différence entre une couleur qui se contente de dire à un périphérique ce qu’il doit faire et une couleur qui dit à quoi elle doit réellement ressembler.
Pourquoi c’est important
Section intitulée « Pourquoi c’est important »Choisis un rouge de marque. Fixe-le une fois. Regarde-le maintenant sur un moniteur de bureau bon marché, puis sur un téléphone OLED dans une pièce très éclairée, puis sorti d’une presse offset. Trois rouges. Parfois trois rouges manifestement différents. Personne n’a changé le nombre ; le nombre n’a jamais été toute l’histoire.
Pour un document anodin, c’est sans conséquence. Pour un logo, une étiquette réglementée, une photographie dans un catalogue, ou un document destiné à survivre pendant des décennies, une couleur qui dérive est un défaut. Le coût n’a rien d’abstrait : c’est une réimpression, un bon à tirer rejeté, ou une archive dont les pages ne correspondent plus aux originaux. Le remède n’est pas un meilleur nombre. C’est de dire la vérité sur ce que le nombre signifie.
La version courte
Section intitulée « La version courte »- La couleur de périphérique nomme une couleur par les valeurs de commande qu’un périphérique reçoit, si bien que le résultat est tout ce que ce périphérique en fait
(Spec: ISO 32000-2, §8.6.4ISO 32000-2 §8.6.4).
DeviceRGB,DeviceCMYKetDeviceGraysont des espaces colorimétriques de périphérique. Mêmes nombres, matériel différent, couleur différente. - La couleur calibrée, fondée sur ICC relie ces nombres à une référence mesurée et indépendante du périphérique au moyen d’un profil intégré (Spec: ISO 32000-2, §8.6.5.5ISO 32000-2 §8.6.5.5). Le document porte désormais assez d’informations pour reproduire la couleur prévue, et non seulement une recette de valeurs de commande.
- Un profil ICC est cette correspondance mesurée : la façon dont les nombres d’un périphérique — ou ceux d’un espace colorimétrique standard ou d’une condition de sortie — se rapportent à la couleur qu’un œil humain percevrait, ancrée à un espace de connexion indépendant du périphérique.
- Une intention de rendu est la politique appliquée lorsqu’une couleur est hors de portée d’un périphérique, car aucun périphérique ne peut afficher toutes les couleurs.
- Une intention de sortie est le document qui déclare, d’emblée, la condition de sortie pour laquelle il a été préparé (Spec: ISO 32000-2, §14.11.5ISO 32000-2 §14.11.5). Les flux de qualité impression (PDF/X) et d’archivage (PDF/A) en dépendent.
Comment NextPDF l’aborde
Section intitulée « Comment NextPDF l’aborde »Commence par la version honnête du problème. DeviceRGB ne contient pas de
couleur. Il contient trois nombres compris entre 0 et 1 et une hypothèse tacite
selon laquelle un écran les transformera en lumière. Deux écrans avec des
rétroéclairages différents, des dalles différentes et un calibrage différent transformeront les mêmes
trois nombres en lumière visiblement différente. Ce n’est pas un défaut du PDF. C’est
ce que « couleur de périphérique » signifie, et la norme est franche à ce sujet : les espaces colorimétriques
de périphérique sont définis par les valeurs qu’un périphérique reçoit, et non par une apparence
absolue (Spec: ISO 32000-2, §8.6.4ISO 32000-2 §8.6.4).
La couleur calibrée comble cet écart en ajoutant une référence. Un profil ICC est le résultat de la caractérisation d’un périphérique ou d’un espace colorimétrique — un moniteur, une imprimante, une presse, ou un espace standard tel que sRGB — et de l’enregistrement de la façon dont ses nombres bruts se rapportent à la couleur dans un espace de connexion indépendant du périphérique qui approxime la vision humaine. Intègre ce profil et les nombres cessent d’être un dialecte privé ; ils deviennent une affirmation ancrée à quelque chose sur quoi tout le monde peut s’accorder. C’est exactement ce que porte un espace colorimétrique fondé sur ICC (Spec: ISO 32000-2, §8.6.5.5ISO 32000-2 §8.6.5.5) : la couleur, plus la correspondance mesurée qui dit ce qu’elle signifie.
Il y a une seconde complication, inévitable. L’ensemble des couleurs qu’une presse peut imprimer n’est pas celui qu’un téléphone peut afficher, et ni l’un ni l’autre n’est l’ensemble complet que l’œil humain peut voir. Lorsqu’une couleur sort de ce qu’un périphérique cible peut reproduire, il faut faire un choix : la rabattre vers la couleur atteignable la plus proche, ou décaler toute une gamme de couleurs ensemble pour que leurs relations restent intactes. Ce choix est l’intention de rendu — une politique délibérée, choisie pour le travail, non un hasard d’arrondi. Une photographie et un logo d’entreprise veulent souvent des intentions différentes, parce que l’une se soucie des dégradés progressifs et l’autre se soucie de toucher une teinte exacte.
Enfin, un document qui va quelque part de précis peut le dire. Une intention de sortie est le fichier qui déclare la condition de sortie pour laquelle il a été préparé — généralement un profil ICC de destination intégré nommant une condition d’impression ou un périphérique (Spec: ISO 32000-2, §14.11.5ISO 32000-2 §14.11.5). C’est la différence entre remettre un fichier à un imprimeur et lui remettre un fichier qui dit « J’ai été construit pour cette presse. » Les profils d’échange pour l’impression la rendent obligatoire : un fichier PDF/X (la famille ISO 15930) est tenu de porter une intention de sortie (Spec: ISO 15930, PDF/XISO 15930 PDF/X), et le PDF/A s’appuie sur le même mécanisme pour que les couleurs dépendantes du périphérique d’un fichier archivé restent interprétables loin dans le futur, longtemps après que l’environnement d’origine a disparu.
- Name the colourChoose a colour space. DeviceRGB/CMYK/Gray name control values; an ICC-based space anchors them to a device-independent reference (ISO 32000-2 §8.6).
- Anchor it (optional but decisive)Embed an ICC profile so the numbers carry their measured meaning, not just a device recipe (ISO 32000-2 §8.6.5.5).
- Reconcile to the deviceA rendering intent decides what happens to colours the target device cannot reproduce — clip the nearest, or shift the range to preserve relationships.
- Declare the destinationAn output intent states the output condition the document was prepared for, as PDF/X and PDF/A workflows require (ISO 32000-2 §14.11.5).
Le rôle de NextPDF dans cette chaîne est d’être conforme aux normes : d’écrire les espaces colorimétriques, les profils intégrés et les intentions de sortie tels que le format les définit, afin qu’un outil en aval — le RIP d’un imprimeur, un validateur d’archivage, une visionneuse — lise exactement ce qui était prévu. Il produit les déclarations ; il ne prétend pas être le périphérique.
Exemple concret
Section intitulée « Exemple concret »La forme ci-dessous esquisse la décision, pas une API précise. Le point essentiel est que la destination est déclarée, non devinée.
<?php
declare(strict_types=1);
use NextPDF\Contracts\PdfDocumentInterface;
/** * Prepare a print-bound document that declares its intended output condition. * * The colour numbers alone do not fix the appearance. Declaring the output * intent — the print condition the file was built for — is what lets a press * interpret those numbers faithfully (ISO 32000-2 §14.11.5). * * @param PdfDocumentInterface $doc A composed document. * @param string $iccProfileBytes The destination ICC profile for the * target print condition. * * @return string The document bytes, carrying a declared output intent. */function prepareForPress( PdfDocumentInterface $doc, string $iccProfileBytes,): string { // Declare the output condition explicitly. The document now states the // device/print condition it was prepared for, instead of leaving its // device colours open to interpretation. $doc->setOutputIntent( identifier: 'Custom press condition', iccProfile: $iccProfileBytes, );
return $doc->output();}Les couleurs n’ont pas changé. Ce qui a changé, c’est que le fichier dit désormais à quoi elles étaient censées ressembler, ce qui est la seule chose sur laquelle une presse ou un validateur peuvent agir.
Idée fausse courante
Section intitulée « Idée fausse courante »« C’est la même valeur hexadécimale, donc c’est la même couleur. » La valeur hexadécimale est un ensemble de valeurs de commande de périphérique. Sans profil ni intention de sortie, c’est une recette dont la cuisine n’est pas précisée — elle aura un goût différent dans chacune. Deux fichiers peuvent porter des nombres RGB identiques et être honnêtement des couleurs différentes, parce que l’un déclare le contexte qui donne un sens aux nombres et l’autre le laisse au hasard.
Un second piège : supposer que DeviceCMYK signifie automatiquement « prêt pour l’impression. » Ce
n’est pas le cas. Le CMYK reste de la couleur de périphérique ; il est façonné pour la presse, mais il n’est pas
calibré tant qu’un profil ou une intention de sortie ne nomme pas la condition de presse réelle.
Limites et frontières
Section intitulée « Limites et frontières »NextPDF produit une couleur conforme aux normes : il écrit des espaces colorimétriques de périphérique et fondés sur ICC et déclare des intentions de sortie pour les flux de type PDF/X et PDF/A, tels que le format les définit. C’est la moitié productrice du travail, et c’est la moitié dont un document peut être responsable.
Ce que NextPDF n’est pas, c’est un système d’épreuvage couleur. Il ne mesure pas ton moniteur, ne simule pas à l’écran le rendu d’une presse, et ne certifie pas que le résultat imprimé correspond à une teinte prévue dans une tolérance donnée. Cela appartient à une chaîne d’épreuvage avec gestion des couleurs et aux personnes qui la pilotent. Le moteur fait dire au fichier la bonne chose ; savoir si le périphérique final l’honore se décide en aval, par le périphérique, les profils ICC en jeu et — pour le PDF/X et le PDF/A — par un validateur, non par le producteur.
Documentation associée
Section intitulée « Documentation associée »- Ce qu’est vraiment un PDF — le modèle d’objets dans lequel vivent ces espaces colorimétriques et ces intentions de sortie.
- Archivage et PDF/A — pourquoi la préservation à long terme s’appuie sur la couleur indépendante du périphérique et les intentions de sortie.
- Le paysage des normes — où l’ISO 32000-2, le PDF/X (ISO 15930) et le PDF/A (ISO 19005) se situent les uns par rapport aux autres.
- PDF 2.0 : ce qui a changé — comment l’édition actuelle du format encadre la couleur et la conformité.
Glossaire
Section intitulée « Glossaire »- Espace colorimétrique de périphérique — une couleur nommée par les valeurs de commande qu’un périphérique
reçoit (
DeviceRGB,DeviceCMYK,DeviceGray) ; l’apparence dépend du périphérique qui les interprète (ISO 32000-2 §8.6.4). - Couleur calibrée / fondée sur ICC — une couleur ancrée à une référence indépendante du périphérique au moyen d’un profil ICC intégré, si bien que l’apparence prévue est reproductible d’un périphérique à l’autre (ISO 32000-2 §8.6.5.5).
- Profil ICC — une correspondance mesurée entre les nombres d’un périphérique précis et une référence indépendante du périphérique qui approxime la vision humaine.
- Intention de rendu — la politique de traitement des couleurs qu’un périphérique cible ne peut pas reproduire : rabattre vers la couleur atteignable la plus proche, ou décaler une gamme pour préserver les relations entre les couleurs.
- Intention de sortie — la déclaration par le document de la condition de sortie pour laquelle il a été préparé, généralement via un profil ICC de destination intégré (ISO 32000-2 §14.11.5) ; requise par le PDF/X et utilisée par le PDF/A.
- PDF/X — la famille de profils d’échange pour l’impression ISO 15930 du PDF ; un fichier PDF/X doit porter une intention de sortie nommant la condition d’impression qu’il cible.