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
| ReportA | Bazowy raport tekstowy, zwykle utworzony przez CreatePreflightReport albo odczytany z pliku utworzonego przez SavePreflightReport. |
|---|---|
| ReportB | Bieżą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