Ön kontrol raporları

Uyumluluk, Belge inceleme, Otomasyon

PDF/UA okuyucu profili seçimi

PDF/UA denetimleri, XMP pdfuaid:part=2 tanımlıyorsa bölüm 2'yi seçer, aksi hâlde bölüm 1 denetimlerini korur; burada anlatılan eski PDF/UA-1 denetimlerinin bölüm 2 için geçerli olduğu ima edilmez

PDF/UA-2 profili; çekirdek kimliklendirme, ad alanı, rol ve yapı denetimlerini uygular. Yapılandırılmış raporlar PDF/UA-2 ve ISO 14289-2 kullanır ve fullCertification=false ile doğrulanmamış kapsamı bildirir

Hedef bölümü zorlamak için CheckFilePDFUACompliance ya da RunPDFUAValidationPipelineTask'ı, yetenek sınırlarını incelemek için GetPDFUAReadValidationCoverageJSON'u kullanın

Genel bakış

PDF Library for Delphi, yerleşik PDF/A ve PDF/UA-1 dosya uyumluluk denetimlerini harici bir PDF üzerinde çalıştırabilir ve sonucu yeniden kullanılabilir rapor çıktısına dönüştürebilir. Bir uygulama veya derleme işlem hattı CheckFileCompliance ile aynı tanılamalara gerek duyuyor ancak dize listesi tanıtıcılarını doğrudan yönetmek istemiyorsa rapor API'lerini kullanın

Rapor işlem hattı kasıtlı olarak katmanlıdır. CheckFileCompliance, sorun listesi tanıtıcılarını döndüren düşük düzey API olarak kalır. CreatePreflightReport, seçili denetimleri kararlı bir düz metin gövdesi olarak biçimlendirir. CreatePreflightReportEx aynı metin raporunu metin, JSON, HTML veya CSV biçimine dönüştürür; böylece tüm biçimler aynı geçme/kalma durumunu ve sorun sayısını paylaşır

Kitaplık API'leri

CheckFileComplianceBir PDF dosyasında seçili bir uyumluluk denetimini çalıştırır ve başarılı durumda 0, aksi durumda sorun satırlarını içeren bir StringListID döndürür
CreatePreflightReportPDF/A, PDF/UA-1 veya her iki denetimi çalıştırır ve üst bilgi meta verilerini, her denetim için bir bölümü ve son özeti içeren düz metin raporu döndürür
CreatePreflightReportExAynı raporu metin (0), JSON (1), HTML (2) veya CSV (3) biçiminde döndürür. Bilinmeyen biçim değerleri metne geri döner
SavePreflightReportDüz metin raporunu UTF-8 olarak yazar ve gerektiğinde üst dizini oluşturur
SavePreflightReportExMetin, JSON, HTML veya CSV raporunu UTF-8 olarak yazar ve gerektiğinde üst dizini oluşturur
ComparePreflightReportsİki düz metin raporunu karşılaştırır, değişken Generated: zaman damgası satırlarını yok sayar ve yalnızca kararlı içerik değiştiğinde kısa bir fark döndürür

Biçim sözleşmesi

MetinStandart rapor gövdesi. Generated, Input, Checks, Issue mode, seçili her denetim için bir bölüm ve Total issues ile Result alanlarını içeren bir Summary bloğu içerir
JSONtitle, generated, input, checks, issueMode, sections ve summary alanlarını içeren tek bir nesne. Her bölümde ad, durum ve sorun dizeleri dizisi bulunur
HTMLBağımsız bir UTF-8 HTML belgesi. Metin raporu HTML için kaçışlanır ve önceden biçimlendirilmiş bir blok içinde gösterilir; böylece rapor içeriği işaretleme olarak yorumlanmadan görünür
CSVSatırlar sabit kind,section,status,code,message sütunlarını kullanır. meta satırları üst bilgi alanlarını, check satırları PASS/FAIL bölüm durumunu, issue satırları iletilerden ayrılmış sayısal sorun kodlarını ve summary satırları son toplamları taşır

Uyumluluk Seçimi

Rapor API'leri ComplianceTests için bir bit maskesi kullanır: 1 PDF/A'yı, 2 PDF/UA-1'i ve 3 her ikisini seçer. 0 geçirilmesi de iki denetimi birden çalıştırır. Options şu anda seçili her denetimi ilk sorundan sonra durdurmak için 1 bitini kullanır; bildirilen tüm sorunları toplamak için 0 geçirin

Komut Satırı Demosu

Delphi PreflightReport konsol demosu, uygulamaya özgü bir kullanıcı arayüzü eklemeden rapor iş akışını gösterir. Tek bir PDF'yi doğrulayabilir, biçimlendirilmiş çıktı oluşturabilir, yeni bir metin raporunu temel çizgisiyle karşılaştırabilir veya bir dizini toplu olarak işleyebilir

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

Tek dosya modu, seçili denetimler sorun bildirmediğinde 0, komut satırı veya çalışma zamanı hatalarında 1, herhangi bir sorun bildirildiğinde ya da temel çizgisi karşılaştırması farklı olduğunda 2 çıkış kodunu döndürür. Dizin modu, her PDF için bir <basename>.preflight.<ext> dosyası yazar ve kaynak yolu, geçme/kalma durumunu, sorun sayısını ve rapor yolunu içeren bir preflight-summary.csv dosyası ekler

Karşılaştırma Notları

ComparePreflightReports düz metin raporları için tanımlanmıştır. Aynı çalıştırmanın kullanıcıya yönelik çıktısı JSON, HTML veya CSV olsa bile temel düz metin raporu ile yeni oluşturulan düz metin raporu verilmelidir. Karşılaştırıcı, zaman damgaları her çalıştırmada değiştiği için Generated: satırlarını normalleştirir; diğer tüm kararlı satırlar, ekleme ve silme farklarını okunabilir tutan küçük bir ileri bakış penceresiyle sırayla karşılaştırılır

Ayrıca bakın

CheckFileCompliance, CreatePreflightReport, CreatePreflightReportEx, SavePreflightReport, SavePreflightReportEx, ComparePreflightReports, GetPDFUADiagnostics