Authoring e Validazione PDF/X-6
HotPDF supporta workflow di scambio PDF/X-6 completi, profilati esternamente e a N coloranti sopra PDF 2.0
Profili
PDFXCompliance | THPDFPDFX6Profile | Profilo di output |
|---|---|---|
'X-6' | px6Complete | Profilo ICC incorporato tramite DestOutputProfile |
'X-6p' | px6External | Profilo ICC esterno gray, RGB o CMYK tramite DestOutputProfileRef |
'X-6n' | px6NChannel | Profilo esterno a N coloranti più una ColorantTable corrispondente |
| Rilevato dal documento | px6Automatic | Usa l'impostazione del producer o l'identificazione XMP caricata |
Esempio del profilo completo
PDF.Version := pdf20;
PDF.PDFXCompliance := 'X-6';
PDF.Title := 'Press-ready artwork';
PDF.Trapped := 'False';
PDF.BeginDoc;
PDF.CurrentPage.SetTrimBox(0, 0,
PDF.CurrentPage.Width, PDF.CurrentPage.Height);
PDF.AddPDFXOutputIntent('CGATS TR 001',
'Document printing condition', ICCStream, 4, 'DeviceCMYK');
PDF.EndDoc;
EndDoc esegue la validazione fail-closed per tutti e tre i profili PDF/X-6 prima della serializzazione
Ambito degli output intent
AddPDFXOutputIntentaggiunge un profilo incorporato a livello Catalog per il profilo completoAddPDFX6PageOutputIntentaggiunge un profilo incorporato a una paginaAddPDFX6ExternalOutputIntentaggiunge un riferimento a profilo esterno a livello Catalog conPageIndex=-1oppure a livello di pagina con un indice a base zero- Un array
OutputIntentsa livello di pagina sostituisce l'array del Catalog per quella pagina - Ogni ambito effettivo deve contenere esattamente un intent PDF/X
Page box
Il validatore risolve MediaBox e CropBox ereditati, controlla i valori diretti di BleedBox, TrimBox e ArtBox, e richiede esattamente un box di pagina finita per pagina
- Ogni rettangolo deve contenere quattro coordinate finite e ordinate
CropBox,BleedBoxe il box della pagina finita devono restare dentroMediaBoxTrimBoxeArtBoxsi escludono a vicenda
Vincoli di scambio
Una singola traversata limitata del grafo controlla l'identificazione del profilo e le strutture di scambio deduplicando le risorse condivise per identità di oggetto
- Header PDF 2.0, marcatore di profilo XMP, date, titolo, stato trapped, ID del trailer e assenza di cifratura
- Tipi di azione, catene di azioni, array di destinazione, stato AcroForm e azioni aggiuntive dei campi
- Annotazioni visibili stampabili con normal appearance fissi e nessun sottotipo PrinterMark o TrapNet
- Programmi di font incorporati, discendenti Type 0, tipi e intervalli dei valori dello stato grafico e resource XObjects
- Dati di produzione di pagina non ammessi e dati Catalog di presentazione alternativa o preferenze del viewer
Regole versionate
THPDFPDFX6ValidationOptions.RuleSet seleziona le regole pubblicate ISO 15930-9:2020 oppure la stessa edizione con gli errata risolti fino al 2025-11-11, con l'insieme con errata risolti selezionato per default
HPDFPDFX6RuleSetRevision restituisce l'etichetta di revisione stabile, e ogni THPDFPDFX6ValidationIssue porta sia RuleSet sia RuleRevision così che le diagnostiche archiviate restino attribuibili quando i default evolvono
Colore dipinto, overprint e trasparenza
Il validatore interpreta stato grafico e risorse agli operatori di pittura effettivi invece di considerare la selezione del colore come output dipinto
- Gli array degli stream di contenuto condividono un unico stack
qeQ, mentre ogni Form XObject applica le proprie risorse, matrice, transparency group e spazio colore di blending nel punto di invocazione - Percorsi, testo, immagini, image mask, shadings, pattern di tiling e shading, CharProcs dei glifi Type 3, gruppi soft-mask e appearance delle annotazioni vengono attraversati attraverso i loro dizionari di risorse effettivi
- Percorsi vuoti, testo invisibile o solo di clipping e glifi Type 3 inutilizzati non creano risultati di colore dipinto
- Le definizioni ICCBased, CalGray, CalRGB, Lab, Indexed, Pattern, Separation, DeviceN e NChannel vengono validate strutturalmente prima di classificare una pittura, inclusi controlli reali su header e componenti ICC invece di fidarsi di
/N - L'overprint mode 1 viene controllato solo dove le pitture di processo che preservano i componenti possono usarlo, e viene riportato come non applicabile per le pitture di immagini e shading
- I shading pattern partono dallo stato di ingresso dello stream di contenuto che li contiene con la trasparenza azzerata, e il loro
ExtGStatedi pattern applica solo i parametri non-stroking usati dalla pittura implicitash - Il fill e stroke combinati sono modellati come un unico transparency group implicito, con uguaglianza esatta degli alpha e gate indipendenti per le politiche di trasparenza e overprint
- La struttura di sottotipo, gruppo e spazio di blending del soft-mask viene controllata prima della traversata; le maschere Alpha ignorano il colore del gruppo, mentre le maschere Luminosity richiedono un
/CSdi gruppo valido e ogni/BCdeve contenere un valore numerico per componente dello spazio di blending - I CharProcs Type 3 richiedono metriche
d0od1iniziali con conteggi esatti degli operandi, larghezze orizzontali corrispondenti a/Widths, advance verticale nullo e limitid1ordinati;d1eredita il colore del chiamante ignorando gli operatori locali di colore e trasparenza e vietando le immagini regolari ma conservando le image mask - Le immagini JPX senza
/ColorSpaceesplicita usano metadati colore del codestream limitati ai soli header, messi in cache una volta per stream di immagine - Quando un'annotazione ha un appearance fisso,
/BMsi applica al composito dell'appearance esterno,/CAe/cadell'annotazione non lo sovrascrivono, e gli operatori dentro l'appearance conservano il loro stato grafico
Esecuzione limitata e caching
I tetti su oggetti, problemi, byte decodificati, lavoro sul contenuto, ricorsione e stack dello stato grafico falliscono in modo sicuro con diagnostiche stabili prima di allocazioni illimitate, inclusi i membri annidati negli array TJ
Contenuto decodificato, profili ICC, colore header JPX e struttura Type 3 usano cache indicizzate locali al documento con storage a crescita geometrica, mentre lo stato di colore e trasparenza sensibile al contesto viene rivalutato a ogni invocazione
Diagnostiche strutturate
ValidatePDFX6 restituisce THPDFPDFX6ValidationIssues, un array di record THPDFPDFX6ValidationIssue il cui THPDFPDFX6IssueSeverity distingue avvisi ed errori
Ogni problema include un codice stabile, una clausola dello standard, un rule set, una revisione della regola, un percorso di oggetto, un numero di oggetto, un indice di pagina a base zero e un messaggio
THPDFPDFX6ValidationOptions limita indipendentemente oggetti, problemi, byte decodificati e token di contenuto e può isolare i controlli di output intent, page box, scambio, font, annotazioni, colore dipinto, overprint o trasparenza