ComparePreflightReports

Zgodność, Inspekcja dokumentu

Opis

Porównuje dwa zwykłe tekstowe raporty kontroli wstępnej i zwraca zwarty diff wiersz po wierszu, gdy ich stabilna zawartość się różni. Użyj tego interfejsu API do wykrywania zmian raportów w testach regresji, zadaniach CI lub kontrolach przed przekazaniem, które przechowują raport bazowy obok pliku testowego PDF.

Składnia

Delphi

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

Parametry

ReportABazowy raport tekstowy, zwykle utworzony przez CreatePreflightReport albo odczytany z pliku utworzonego przez SavePreflightReport.
ReportBBieżący raport tekstowy do porównania z raportem bazowym.

Wartość zwracana

Zwraca pusty ciąg, gdy raporty są zgodne po znormalizowaniu zmiennych wierszy znacznika czasu Generated:. Gdy stabilna zawartość się różni, wynik zaczyna się od PDF Library for Delphi Preflight Report Diff; wspólne wiersze mają prefiks dwóch spacji, wiersze występujące tylko w ReportA używają - , a wiersze występujące tylko w ReportB używają + .

Uwagi

Porównanie zaprojektowano dla deterministycznego wyjścia tekstowego generowanego przez CreatePreflightReport. Nie analizuje raportów JSON, HTML ani CSV; gdy przepływ wymaga stabilnej bramki regresji, porównaj postać tekstową, a następnie wygeneruj raport w formacie potrzebnym użytkownikom lub narzędziom dalszego przetwarzania. Pełny przepływ wiersza poleceń i przetwarzania wsadowego opisano w Preflight Reports.

Przykład

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);

Zobacz również

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