ComparePreflightReports

Conformitate, inspecția documentelor

Descriere

Compară două rapoarte preflight în text simplu și returnează un diff compact, linie cu linie, când conținutul lor stabil diferă. Folosiți acest API pentru a detecta derivarea rapoartelor în testele de regresie, în joburile CI sau în verificările de livrare care țin un raport de bază lângă un fișier PDF de probă

Sintaxă

Delphi

Function TPDFlib.ComparePreflightReports(Const ReportA, ReportB: WideString): WideString;

Parametri

ReportARaport preflight de bază în text simplu, de obicei produs de CreatePreflightReport sau citit înapoi dintr-un fișier creat de SavePreflightReport
ReportBReturnează numărul de straturi compuse, sau 0 când niciun strat nu este în coadă, înregistrarea este încă activă, pagina selectată nu este pagina țintă, dimensiunile ei s-au schimbat sau un form capturat nu este disponibil

Valoare returnată

Returnează un șir gol când rapoartele corespund după normalizarea liniilor de timestamp volatile Generated:. Când conținutul stabil diferă, rezultatul începe cu PDF Library for Delphi Preflight Report Diff; liniile comune folosesc un prefix de două spații, liniile doar în ReportA folosesc - , iar liniile doar în ReportB folosesc +

Observații

Comparația este proiectată pentru ieșirea de text deterministă produsă de CreatePreflightReport. Nu parsează rapoarte JSON, HTML sau CSV; comparați forma de text simplu când un flux de lucru are nevoie de porți stabile de regresie, apoi generați orice raport formatat necesar pentru oameni sau unelte din aval. Consultați Preflight Reports pentru fluxul complet de linie de comandă și de lot

Exemplu

Baseline := TFile.ReadAllText('expected-preflight.txt', TEncoding.UTF8);
Current := PDF.CreatePreflightReport('output.pdf', '', 1 or 2, 0);
Diff := PDF.ComparePreflightReports(Baseline, Current);
if Diff <> '' then
  TFile.WriteAllText('preflight.diff.txt', Diff, TEncoding.UTF8);

Consultați și

Preflight Reports, CreatePreflightReport, CreatePreflightReportEx, SavePreflightReport, SavePreflightReportEx, CheckFileCompliance