RepairDocumentMetadata

Metadata

Beskrivning

Drar ihop dokumentinformationsordlistan och XMP-paketet så de stämmer, och kompletterar den identifiering en påstådd standard kräver

Syntax

Delphi

Function TPDFlib.RepairDocumentMetadata: Integer;

Returvärden

CountHur många poster som reparerades
0De två halvorna överensstämde redan och inget saknades

Anmärkningar

En PDF säger vem som skrev den två gånger: en gång i dokumentinformationsordlistan och en gång i XMP-paketet. En validerare läser båda och avvisar en fil där de tvistar, och de flesta filer som faller på den här punkten fick helt enkelt aldrig sin XMP-halva skriven

Informationsordlistan tas som dokumentets eget vittnesbörd, eftersom det är den halva nästan varje producent sätter. Där bara XMP-halvan bär ett värde fylls informationsordlistan i från den i stället, så inget som redan är upptecknat kastas bort. Titel, författare, ämne, nyckelord, skapare, producent och båda datumen omfattas

När dokumentet satts till ett PDF/A-läge med SetPDFAMode återställs standardidentifieringen om den saknas — vilket händer när en uppringare lämnar ett eget paket med SetDocumentMetadata Utan den läser en validerare filen som en vanlig PDF och rapporterar varje regel i den påstådda delen som obefintlig. Ett dokument som öppnats från en fil bär inget eget läge, så anropa SetPDFAMode först om filen ska göra ett sådant anspråk

Paketet får också ange att det beskriver en PDF, vilket en validerare kontrollerar

Exempel

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

Se även

GetDocumentMetadata, SetDocumentMetadata, SetPDFAMode