Salta ai contenuti

Conformità PDF/X: l'output intent per la produzione di stampa emesso da NextPDF

Dichiarazione di ambito. Un profilo testato non equivale a una certificazione.

Avvertenza sull’ambito (leggere prima). ISO 15930 (lo standard della famiglia PDF/X) non è presente nel corpus di verifica di NextPDF. Questa pagina non rivendica una certificazione PDF/X-4 o PDF/X-6 indipendente. NextPDF emette l’output intent per la produzione di stampa e il meccanismo ICC da cui dipendono i flussi PDF/X. NextPDF li verifica rispetto a ISO 32000-2 §14.11.5 (il dizionario OutputIntent che ISO 15930 importa per riferimento) e la struttura del profilo ICC.1 / ISO 15076-1. La conformità di un determinato file a una parte PDF/X viene decisa da uno strumento esterno di preflight di prestampa, non da questa libreria.

NextPDF Core emette un OutputIntent /GTS_PDFX che fa riferimento a un DestOutputProfile ICC incorporato quando viene selezionato uno spazio di lavoro a gamma estesa. NextPDF Core vincola il profilo ICC incorporato alla versione 4. Si tratta dei prerequisiti strutturali controllati da un preflight PDF/X-4 / PDF/X-6. La libreria produce questi artefatti; la conformità viene decisa da uno strumento di preflight.

Terminal window
composer require nextpdf/core:^3

Il percorso dell’output intent PDF/X è una funzionalità di Core ed è guidato dall’OutputColorProfile del documento. Per l’OutputIntent GTS_PDFX in sé non è richiesto alcun pacchetto Premium.

NextPDF\Core\OutputColorProfile è il discriminatore dello spazio di lavoro: DeviceRGB (predefinito, nessun intent a gamma estesa), DisplayP3, Rec2020, A98RGB, ProphotoRGB. La selezione di qualunque caso a gamma estesa attiva il percorso PdfWriter che emette, secondo ISO 32000-2 §14.11.5:

  • un dizionario /Type /OutputIntent /S /GTS_PDFX nell’array /OutputIntents del catalogo;
  • un flusso ICC incorporato come DestOutputProfile (il profilo dello spazio di lavoro, ad esempio display-p3-v4.icc);
  • i campi OutputConditionIdentifier / registry richiesti dal dizionario.

NextPDF\Graphics\ColorSpace\IccVersionTier vincola il profilo incorporato. V4 è richiesto per gli output intent PDF 2.0 / PDF/A-4 / PDF/X-6. requiresV4Strict() rifiuta un profilo v2, così che una rivendicazione PDF/X-6 non venga formulata a fronte di un profilo ICC non v4. Questo è il prerequisito strutturale verificato da un preflight PDF/X-6, non il preflight stesso.

SimboloEffetto
OutputColorProfile (enum)Discriminatore dello spazio di lavoro; i casi a gamma estesa attivano l’emissione dell’OutputIntent /GTS_PDFX.
OutputColorProfile::isWideGamut(): boolTrue per qualsiasi caso diverso da DeviceRGB.
OutputColorProfile::iccFilename(): ?stringLa risorsa del profilo ICC incorporato per il caso.
IccVersionTier::requiresV4Strict()Gate che rifiuta i profili ICC non v4 quando si rivendica una struttura 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";

In produzione, il pattern inoltra l’output a un preflight di prestampa esterno (lo strumento di riferimento del flusso di stampa ricevente). Lo stesso pattern tratta il report di preflight come gate. NextPDF emette l’OutputIntent GTS_PDFX e l’ICC v4. Lo strumento di preflight giudica la conformità PDF/X-4 / PDF/X-6. NextPDF non include un validatore PDF/X.

  • DeviceRGB non emette alcun intent PDF/X. Il profilo predefinito è byte-identico all’output legacy e non contiene alcun OutputIntent /GTS_PDFX. Un flusso di lavoro PDF/X deve selezionare esplicitamente un profilo a gamma estesa.
  • Un profilo ICC v2 blocca una rivendicazione PDF/X-6. requiresV4Strict() rifiuta un profilo v2; non rivendicare una struttura PDF/X-6 a fronte di un profilo ICC non v4.
  • Tinte piatte / sovrastampa. I flussi di lavoro PDF/X-1a/X-3 CMYK + tinte piatte completi restano fuori dall’ambito del percorso OutputIntent di Core. Questa pagina copre solo l’output intent basato su ICC per PDF/X-4 / PDF/X-6.
  • Nessuna rivendicazione di certificazione. L’emissione dell’OutputIntent è un supporto strutturale. La conformità PDF/X è un verdetto di preflight, non uno stato della libreria.

Un OutputIntent a gamma estesa aggiunge un flusso ICC incorporato (di dimensione fissa per lo spazio di lavoro) durante save(). Budget previsto: wall ≤ 1500 ms, picco ≤ 128 MB.

Gli output intent per la produzione di stampa sono metadati di gestione del colore, non un controllo di sicurezza. Il profilo ICC incorporato è un’informazione pubblica.

L’emissione dell’OutputIntent avviene in-process. Vengono scritti solo il documento e il profilo ICC incorporato. Nessun contenuto lascia il processo; il profilo non contiene dati PII.

L’esempio registra solo il percorso di output e un suggerimento di convalida. Non viene registrato alcun byte del documento; NEXTPDF_COOKBOOK_OUTPUT viene rispettato.

Un file PDF/X non è un meccanismo di controllo degli accessi. L’OutputIntent garantisce la riproducibilità del colore per una condizione di stampa, non la riservatezza.

Il percorso dell’OutputIntent PDF/X non esegue alcuna operazione crittografica. La modalità FIPS non ha alcun effetto.

RivendicazioneSpecificaClausolareference_id
Un OutputIntent fa riferimento a un flusso ICC DestOutputProfile per la condizione di rendering in output.ISO 32000-2§14.11.5
L’OutputIntent contiene un OutputConditionIdentifier / identificazione di registry.ISO 32000-2§14.11.5
Gli output intent risiedono nell’array OutputIntents del catalogo del documento.ISO 32000-2§14.11.5
Un profilo ICC conforme contiene un header definito con un campo versione.ICC.1 / ISO 15076-1§7
Il DestOutputProfile incorporato utilizza la struttura del profilo ICC v4.ICC.1 / ISO 15076-1§7

ISO 15930 (PDF/X) non è presente nel corpus di verifica. Le rivendicazioni precedenti sono i prerequisiti di ISO 32000-2 §14.11.5 + ICC.1 controllati da un preflight PDF/X. Le citazioni sono puntatori clause-id + reference_id nel corpus di verifica (manifest ). Non viene riprodotto alcun testo degli standard.