RepairDocumentMetadata

Metadados

Descrição

Harmoniza o dicionário de informações do documento com o pacote XMP e completa a identificação necessária à norma declarada

Sintaxe

Delphi

Function TPDFlib.RepairDocumentMetadata: Integer;

Valores devolvidos

CountNúmero de entradas reparadas
0As duas metades já estavam de acordo e nada estava em falta

Observações

Um PDF indica duas vezes quem o escreveu: uma no dicionário de informações do documento e outra no pacote XMP. Um validador lê ambos e rejeita um ficheiro quando estes divergem, e a maioria dos ficheiros que falham neste ponto simplesmente nunca teve a metade XMP escrita

O dicionário de informações é considerado a própria palavra d'um documento, pois é a metade que quase todos os produtores definem. Quando apenas a metade XMP contém um valor, o dicionário de informações é preenchido a partir dela, para que nada do que já foi registado se perca. Abrange título, autor, assunto, palavras-chave, criador, produtor e ambas as datas

Quando o documento é definido para um modo PDF/A com SetPDFAMode, a identificação das normas é restaurada se estiver em falta — o que acontece sempre que um chamador fornece o seu próprio pacote com SetDocumentMetadata. Sem ela, um validador lê o ficheiro como um PDF normal e comunica como não cumprida cada regra da parte reivindicada. Um documento aberto a partir de um ficheiro não transporta um modo próprio, pelo que deve chamar primeiro SetPDFAMode se o ficheiro deva reivindicar um

O pacote também é configurado para indicar que descreve um PDF, o que é verificado por um validador

Exemplo

PDF.LoadFromFile('report.pdf', '');
Repaired := PDF.RepairDocumentMetadata;
PDF.SaveToFile('report-fixed.pdf');

Consulte também

GetDocumentMetadata, SetDocumentMetadata, SetPDFAMode