Preflight Reports
التوافق، فحص المستندات، الأتمتة
اختيار ملف تعريف قارئ PDF/UA
تختار فحوص PDF/UA الجزء 2 حين يُعرّف XMP القيمة pdfuaid:part=2 وتحتفظ في غير ذلك بفحوص الجزء 1؛ ولا يُفهم من وصف فحوص PDF/UA-1 القديمة هنا أنها تنطبق على الجزء 2
ينفذ ملف تعريف PDF/UA-2 فحوص التعريف ومساحات الأسماء والأدوار والبنية الأساسية؛ وتستخدم التقارير المهيكلة PDF/UA-2 وISO 14289-2 وتفصح عن fullCertification=false وعن النطاق غير الموثَّق
استخدم CheckFilePDFUACompliance أو RunPDFUAValidationPipelineTask لفرض جزء هدف، وGetPDFUAReadValidationCoverageJSON لفحص حدود القدرات
نظرة عامة
يمكن لـ PDF Library for Delphi إجراء فحوصات امتثال ملف PDF/A وPDF/UA-1 المدمجة على ملف PDF خارجي وتحويل النتيجة إلى إخراج تقرير قابل لإعادة الاستخدام. استخدم واجهات التقرير عندما يحتاج تطبيق أو خط بناء نفس تشخيصات CheckFileCompliance لكنه لا يريد إدارة مقابض قوائم السلاسل مباشرةً
pipeline التقرير مُطبّق طبقاتً عمدًا. يبقى CheckFileCompliance الواجهة منخفضة المستوى التي تُرجع مقابض قوائم الملاحظات. وينسق CreatePreflightReport الفحوصات المحددة في متن نص خام مستقر. ويحول CreatePreflightReportEx تقرير النص نفسه إلى نص أو JSON أو HTML أو CSV فتتشارك جميع الصيغ حالة النجاح/الفشل وعدد الملاحظات نفسهما
واجهات برمجة المكتبة
| CheckFileCompliance | يجري فحص امتثال محددًا واحدًا على ملف PDF ويعيد 0 للنجاح أو StringListID يحتوي أسطر الملاحظات |
|---|---|
| CreatePreflightReport | يجري فحوص PDF/A أو PDF/UA-1 أو كليهما ويعيد تقريرًا نصيًا خامًا ببيانات وصفية ترويسة وقسم عن كل فحص وملخص نهائي |
| CreatePreflightReportEx | تُرجع التقرير نفسه بصيغة النص (0) أو JSON (1) أو HTML (2) أو CSV (3). وتعود قيم الصيغة غير المعروفة إلى النص |
| SavePreflightReport | يكتب التقرير النصي الخام بترميز UTF-8 وينشئ المجلد الأب عند اللزوم |
| SavePreflightReportEx | يكتب تقرير نصيًا أو JSON أو HTML أو CSV بترميز UTF-8 وينشئ المجلد الأب عند اللزوم |
| ComparePreflightReports | يقارن تقريرين نصيين خامين ويتجاهل أسطر ختم Generated: الزمنية المتقلبة ويُرجع فرقًا مضغوطًا فقط عندما تغير المحتوى المستقر |
Format Contract
| Text | متن التقرير القياسي. ويحتوي Generated وInput وChecks وIssue mode وقسمًا عن كل فحص محدد وكتلة Summary بـ Total issues وResult |
|---|---|
| JSON | مؤشر إلى علم Boolean يُستطلع بين عمليات الرسم، أو nil |
| HTML | مقبض خط موجب عند النجاح |
| CSV | تستخدم الصفوف الأعمدة الثابتة kind,section,status,code,message. وتحمل صفوف meta حقول الترويسة، وتحمل صفوف check حالة قسم PASS/FAIL، وتفصل صفوف issue رموز الملاحظات الرقمية عن الرسائل، وتحمل صفوف summary الإجماليات النهائية |
Compliance Selection
تستخدم واجهات التقرير قناع بتات لـ ComplianceTests: 1 يختار PDF/A و2 يختار PDF/UA-1 و3 يختار كليهما. وتمرير 0 يجري الفحصين أيضًا. وتستخدم Options حاليًا البت 1 لإيقاف كل فحص محدد بعد أول ملاحظة فيه؛ مرر 0 لجمع كل الملاحظات المُبلغ عنها
Command-Line Demo
يوضح العرض التجريبي لطرفية PreflightReport من Delphi سير عمل التقرير دون إضافة واجهة خاصة بالتطبيق. ويمكنه التحقق من ملف PDF واحد أو توليد إخراج منسق أو مقارنة تقرير نصي جديد بأساس أو معالجة مجلدًا بالدفعة
PreflightReport.exe --input "C:\PDFs\invoice.pdf" --output "C:\Reports\invoice.preflight.txt"
PreflightReport.exe --input "C:\PDFs\invoice.pdf" --output "C:\Reports\invoice.preflight.json" --json
PreflightReport.exe --input "C:\PDFs\invoice.pdf" --output "C:\Reports\invoice.preflight.csv" --format csv
PreflightReport.exe --input "C:\PDFs\invoice.pdf" --output "C:\Reports\invoice.preflight.txt" --compare "C:\Baselines\invoice.preflight.txt"
PreflightReport.exe --input-dir "C:\PDFs" --output-dir "C:\Reports" --recursive --format html
يعيد وضع الملف الواحد رمز خروج 0 عندما لا تُبلغ الفحوصات المحددة عن ملاحظات، و1 لأخطاء سطر أوامر أو تشغيل، و2 عندما تُبلغ عن أي ملاحظة أو اختلف مقارنة الأساس. ويكتب وضع المجلد ملف <basename>.preflight.<ext> واحدًا عن كل PDF ويضيف ملف preflight-summary.csv بمسار المصدر وحالة النجاح/الفشل وعدد الملاحظات ومسار التقرير
ملاحظات المقارنة
يُرجع Apply عدد الصفحات التي وضعت عليها العلامة المائية
انظر أيضا
CheckFileCompliance, CreatePreflightReport, CreatePreflightReportEx, SavePreflightReport, SavePreflightReportEx, ComparePreflightReports, GetPDFUADiagnostics