ComparePreflightReports

Efterlevnad, dokumentinspektion

Beskrivning

Jämför två vanliga text-preflight-rapporter och returnerar en kompakt rad-för-rad-diff när deras stabila innehåll skiljer sig. Använd detta API för att upptäcka rapportdrift i regressionstester, CI-jobb eller leveranskontroller som håller en baslinjerapport bredvid en PDF-fixtur

Syntax

Delphi

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

Parametrar

ReportABaslinje-rapport i vanlig text, vanligtvis producerad av CreatePreflightReport eller läst tillbaka från en fil skapad av SavePreflightReport
ReportBDen aktuella vanliga textrapporten som ska jämföras med baslinjen

Returvärde

Returnerar en tom sträng när rapporterna matchar efter normalisering av volatila Generated:-tidsstämpelrader. När stabilt innehåll skiljer sig börjar resultatet med PDF Library for Delphi Preflight Report Diff; delade rader använder ett tvåmellanslagsprefix, rader bara i ReportA använder - , och rader bara i ReportB använder +

Anmärkningar

Jämförelsen är designad för den deterministiska textutdata som CreatePreflightReport producerar. Den parsar inte JSON-, HTML- eller CSV-rapporter; jämför vanlig text-formen när ett flöde behöver stabila regressionsgrindar och generera sedan vilken formaterad rapport som behövs för människor eller nedströmsverktyg. Se Preflight Reports för hela kommandorads- och batchflödet

Exempel

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

Se även

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