ComparePreflightReports
Conformidade, inspeção de documentos
Descrição
Compara dois relatórios de preflight em texto simples e devolve uma diferença compacta linha a linha quando o conteúdo estável diverge. Utilize esta API para detetar alterações inesperadas nos relatórios em testes de regressão, tarefas de CI ou verificações de entrega que mantenham um relatório de referência junto de um PDF de teste
Sintaxe
Delphi
Function TPDFlib.ComparePreflightReports(Const ReportA, ReportB: WideString): WideString;
Parâmetros
| ReportA | Relatório base em texto simples, normalmente produzido por CreatePreflightReport ou relido de um ficheiro criado por SavePreflightReport |
|---|---|
| ReportB | Relatório atual em texto simples a comparar com a referência |
Valor devolvido
Devolve uma cadeia vazia quando os relatórios correspondem após a normalização das linhas voláteis de carimbo de data e hora Generated:. Quando o conteúdo estável diverge, o resultado começa por PDF Library for Delphi Preflight Report Diff; as linhas comuns utilizam um prefixo de dois espaços, as linhas exclusivas de ReportA utilizam - e as linhas exclusivas de ReportB utilizam +
Observações
A comparação foi concebida para a saída de texto determinística produzida por CreatePreflightReport. Não analisa relatórios JSON, HTML nem CSV; compare a forma em texto simples quando um fluxo de trabalho necessitar de barreiras de regressão estáveis e gere depois qualquer relatório formatado necessário para pessoas ou ferramentas a jusante. Consulte Relatórios de preflight para conhecer o fluxo de trabalho completo de linha de comandos e em lote
Exemplo
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);
Consulte também
Relatórios de preflight, CreatePreflightReport, CreatePreflightReportEx, SavePreflightReport, SavePreflightReportEx, CheckFileCompliance