function ValidatePdfX: TPdfXValidationResult;
تجوب ValidatePdfX المستند المفتوح بحثًا عن علامات تنسيق الملف التي تعرّفها عائلة ISO 15930
pdfxid:GTS_PDFXVersion (and optionally pdfxid:GTS_PDFXConformance for PDF/X-1a / PDF/X-3).pdfaExtension:schemas description for the pdfxid namespace (XMP extension-schema convention)./GTS_PDFXVersion بالقيمة نفسها لخاصية XMP/OutputIntents array referencing an OutputIntent dictionary with an embedded ICC profile via /DestOutputProfile./Title entry (PDF/X strongly recommends it)./ID array and the absence of /Encrypt (encryption is forbidden by all PDF/X versions).xmp:CreateDate و xmp:ModifyDate في XMP من أجل تكافؤ Info / XMP.النتيجة هي سجل TPdfXValidationResult
pxc1a إذا طابقت "PDF/X-1"، وpxc3 إذا طابقت "PDF/X-3"، وpxc4 إذا طابقت "PDF/X-4"، وpxcNone عند غياب علامة PDF/X، وpxcUnknown عندما تكون العلامة موجودة لكن غير معروفةTPdfXValidationIssues تحتوي صفرًا أو أكثر من: pvxiMissingXmpMetadata وpvxiMissingPdfXIdentifier وpvxiMissingExtensionSchema وpvxiMissingInfoVersionEntry وpvxiInfoVersionMismatch وpvxiMissingOutputIntent وpvxiMissingIccProfile وpvxiMissingTitle وpvxiMissingTrailerId وpvxiEncryptionPresent وpvxiMissingXmpDatesValidatePdfX فحص للقراءة فقط. استخدمه قبل دفع حمولة PDF/X إلى
سير عمل ما قبل الطباعة لإظهار حالات عدم التوافق للمشغل. وللتحقق
الشائع من "ما مستوى PDF/X هذا؟" من دون الحاجة إلى قائمة
المشكلات، فضّل الخاصية الأخف PdfXConformance
pvxiInfoVersionMismatch إلا عندما تكون كلتا القيمتين Info /GTS_PDFXVersion وXMP pdfxid:GTS_PDFXVersion موجودتين ومختلفتينConformance = pxcUnknown ومجموعة Issues فارغةpxcUnknown
uses System.TypInfo;
var
Outcome: TPdfXValidationResult;
Issue: TPdfXValidationIssue;
begin
Pdf1.FileName := 'C:\Incoming\ad.pdf';
Pdf1.Active := True;
Outcome := Pdf1.ValidatePdfX;
Memo1.Lines.Add('Level: ' + GetEnumName(TypeInfo(TPdfXConformance),
Ord(Outcome.Conformance)));
for Issue in Outcome.Issues do
Memo1.Lines.Add('- ' + GetEnumName(TypeInfo(TPdfXValidationIssue), Ord(Issue)));
end;