Авторинг и валидация за PDF/X-6
HotPDF поддържа пълни, с външно профилирани и N-оцветителни PDF/X-6 процеси за обмен върху PDF 2.0
Профили
PDFXCompliance | THPDFPDFX6Profile | Output профил |
|---|---|---|
'X-6' | px6Complete | Вграден ICC профил чрез DestOutputProfile |
'X-6p' | px6External | Външен gray, RGB или CMYK ICC профил чрез DestOutputProfileRef |
'X-6n' | px6NChannel | Външен N-оцветителен профил плюс съответстваща ColorantTable |
| Разпознат от документа | px6Automatic | Използва настройката на producer или заредената XMP идентификация |
Пример с пълен профил
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 пуска fail-closed валидация и за трите PDF/X-6 профила преди сериализацията
Обхват на output intent
AddPDFXOutputIntentдобавя един вграден профил на ниво Catalog за пълния профилAddPDFX6PageOutputIntentдобавя вграден профил към една страницаAddPDFX6ExternalOutputIntentдобавя референция към външен профил в обхвата на Catalog сPageIndex=-1или в обхвата на страница с индекс от нулева база- Масивът
OutputIntentsна ниво страница замества масива на Catalog за тази страница - Всеки действителен обхват трябва да съдържа точно един PDF/X intent
Кутии на страницата
Валидаторът разрешава наследените MediaBox и CropBox, проверява директните стойности BleedBox, TrimBox и ArtBox и изисква точно една кутия на готовата страница за всяка страница
- Всеки правоъгълник трябва да съдържа четири крайни, подредени координати
CropBox,BleedBoxи кутията на готовата страница трябва да останат вътре вMediaBoxTrimBoxиArtBoxса взаимно изключващи се
Ограничения за обмен
Едно ограничено обхождане на графа проверява идентификацията на профила и структурите за обмен, като дедупликира споделените ресурси по самоличност на обекта
- PDF 2.0 заглавна част, XMP маркер на профил, дати, заглавие, trapped статус, ID на trailer и липса на шифроване
- Типове действия, вериги от действия, масиви с дестинации, състояние на AcroForm и допълнителни действия на полета
- Печатаеми видими анотации с фиксирани нормални appearance и без подтип PrinterMark или TrapNet
- Вградени шрифтови програми, наследници на Type 0, типове и диапазони на стойности в graphics state и ресурсни XObject-и
- Недопустими данни за производствени стъпки на страница и Catalog данни за alternate presentation или viewer preference
Верционирани правила
THPDFPDFX6ValidationOptions.RuleSet избира публикуваните правила ISO 15930-9:2020 или същото издание с разрешени errata до 2025-11-11, като наборът с разрешени errata е по подразбиране
HPDFPDFX6RuleSetRevision връща стабилния етикет на ревизията, а всяка THPDFPDFX6ValidationIssue носи и RuleSet, и RuleRevision, така че съхранените диагностики остават приписваеми, когато настройките по подразбиране се развиват
Боядисани цветове, overprint и прозрачност
Валидаторът интерпретира graphics state и ресурсите при действителните оператори за боя, вместо да третира избора на цвят като боядисан изход
- Масивите в content stream-а споделят един стек
qиQ, докато всеки Form XObject прилага своите ресурси, матрица, transparency group и цвятно пространство за смесване в точката на извикване - Пътеки, текст, изображения, image маски, shadings, шарки от тип tiling и shading, CharProcs на глифове от Type 3, soft mask групи и appearance на анотации се обходят чрез ефективните им ресурсни речници
- Празни пътеки, невидим или само изрязващ текст и неизползвани Type 3 глифове не създават находки за боядисани цветове
- Дефинициите ICCBased, CalGray, CalRGB, Lab, Indexed, Pattern, Separation, DeviceN и NChannel се валидират структурно, преди дадена боя да бъде класифицирана, включително реални проверки на ICC header и компоненти, вместо да се вярва на
/N - Overprint режим 1 се проверява само там, където процесни бои, пазещи компоненти, могат да го използват, и се докладва като неприложим за бои от изображения и shadings
- Shading шарките тръгват от входното състояние на обграждащия content stream с нулирана прозрачност, а техният шарков
ExtGStateприлага само нестрикиращите параметри, използвани от неявната бояsh - Комбинираното запълване и щрихиране се моделира като една неявна transparency group с точно равенство на alpha и независими портали за политика на прозрачност и overprint
- Подтипът на soft mask, структурата на групата и цвятното пространство за смесване се проверяват преди обхождането; Alpha маските игнорират цвета на групата, докато Luminosity маските изискват валидна група
/CS, а всеки/BCтрябва да съдържа по една числова стойност на компонент на пространството за смесване - Type 3 CharProcs изискват водещи метрики
d0илиd1с точен брой операнди, хоризонтални ширини, съвпадащи с/Widths, нулево вертикално напредване и подредени границиd1;d1наследява цвета на извикващия, като игнорира локални оператори за цвят и прозрачност, забранява обикновени изображения, но запазва image маски - JPX изображения без изричен
/ColorSpaceизползват ограничени, само-header цветови метаданни от codestream, кеширани по веднъж на поток-изображение - Когато анотация има фиксирано appearance,
/BMважи за външния composite на appearance, анотационните/CAи/caне го надмогват, а операторите вътре в appearance запазват собствения си graphics state
Ограничено изпълнение и кеширане
Таваните за обекти, проблеми, декодирани байтове, работа по съдържание, рекурсия и стек на graphics state се провалят затворено със стабилна диагностика, преди неограничено заделяне на памет, включително за членове, вложени в масиви TJ
Декодираното съдържание, ICC профилите, цветовете от JPX header и структурата на Type 3 използват индексирани локални за документа кешове с геометрично разрастващо се хранилище, докато чувствителното към контекста състояние на цвят и прозрачност се преоценява при всяко извикване
Структурирана диагностика
ValidatePDFX6 връща THPDFPDFX6ValidationIssues — масив от записи THPDFPDFX6ValidationIssue, чиято THPDFPDFX6IssueSeverity различава предупреждения от грешки
Всеки проблем включва стабилен код, клауза от стандарта, набор от правила, ревизия на правилата, път до обект, номер на обект, индекс на страница от нулева база и съобщение
THPDFPDFX6ValidationOptions независимо ограничава обекти, проблеми, декодирани байтове и съдържателни токени и може да изолира проверки за output intent, кутии на страницата, обмен, шрифтове, анотации, боядисани цветове, overprint или прозрачност