CreateValidationReport

Compliance

Descrição

Cria um relatório estruturado de validação PDF/A e PDF/UA-1 em XML ou JSON, associando a cláusula ISO e estatísticas a cada resultado

Sintaxe

Delphi

Function TPDFlib.CreateValidationReport(Const InputFileName, Password: WideString; ComplianceTests, Options, ReportFormat: Integer): WideString;

Parâmetros

InputFileNameO ficheiro PDF a validar
PasswordA palavra-passe necessária para abrir o ficheiro, ou uma cadeia vazia
ComplianceTestsMáscara de bits que seleciona as verificações: 1 = PDF/A, 2 = PDF/UA-1, 0 = ambas
OptionsPassado para as verificações; 1 para na primeira ocorrência de cada verificação
ReportFormat0 = XML, 1 = JSON

Valores devolvidos

Empty stringO ficheiro de entrada não existe
ReportO documento completo do relatório

Observações

Quando são selecionadas várias normas, o ficheiro é analisado uma única vez e ambas as auditorias partilham o mesmo leitor, estado de segurança, gráfico de objetos do documento e cache de objetos diferida

Cada ocorrência contém o ID da regra, a norma à qual pertence (ISO 19005-1 ou ISO 14289-1), um nome curto de regra legível por máquina, a cláusula ISO aplicada pela regra, uma gravidade e o número de objetos afetados. Cada elemento de verificação termina com o respetivo resultado e número de problemas, e o relatório termina com um resumo que contém o veredicto do documento, o número total de problemas e o número de verificações aprovadas e falhadas

Uma norma que não tenha sido solicitada é comunicada como not-checked, e não como uma verificação aprovada, para que uma execução que tenha abrangido apenas uma norma não possa ser confundida com um resultado integralmente satisfatório

Difere de CreatePreflightReportEx, que primeiro renderiza um relatório legível e depois converte esse texto em JSON, HTML ou CSV. O relatório de validação é composto a partir da saída em bruto das verificações, pelo que uma cadeia de compilação pode impor uma regra por ID ou cláusula ISO, em vez de procurar subcadeias numa frase

Exemplo

Report:= PDF.CreateValidationReport('invoice.pdf', '', 0, 0, 1);
if Pos('"result": "failed"', Report)> 0 then
  ShowMessage('the file did not pass validation');

Consulte também

CreateValidationPipelineReport, SaveValidationReport, CheckFileCompliance, CreatePreflightReport, CreatePreflightReportEx