PDFium Delphi Component Docs

InspectPdfAMetadata Methode

Komponente: TPdf  ·  Unit: PDFium
Meldet exakte ISO 19005-1-Info-zu-XMP-Äquivalenz für das aktive Dokument

Syntax

function InspectPdfAMetadata: TPdfAMetadataReport;

ResultEin TPdfAMetadataReport mit XMP-Verfügbarkeit, Parse-Fehlertext, Abweichungsfeldern und acht feldweisen Vergleichen

Beschreibung

Die Methode liest Title, Author, Subject, Keywords, Creator, Producer, CreationDate und ModDate über PDFium, sodass PDFDocEncoding- und UTF-16-Zeichenketten dieselbe Unicode-Dekodierung wie das geöffnete Dokument verwenden

Die rohe Dictionary-Inspektion erfasst, ob jeder Info-Schlüssel unabhängig von seinem Wert existiert, sodass eine explizit leere Zeichenkette nicht als fehlender Schlüssel gilt

Title und Subject verlangen einen rdf:Alt-Wert mit dem Tag x-default; Author verlangt ein rdf:Seq mit genau einem Wert; die übrigen Zuordnungen verlangen eine einfache Eigenschaft, die über Namespace-URI und lokalen Namen gefunden wird

Textwerte werden nach exakten Unicode-Codepunkten verglichen; Datumsangaben werden als lokale Komponenten verglichen, wenn kein Wert eine Zeitzone besitzt, oder als UTC-Zeitpunkte, wenn beide Werte Zeitzonen tragen

TPdfAMetadataState unterscheidet die Zustände nicht erforderlich, äquivalent, XMP fehlt, falscher RDF-Typ, Wertabweichung, ungültiges Info-Datum und ungültiges XMP-Datum

Die Methode ist rein lesend, erfordert ein aktives Dokument und ändert weder den PDFium- noch den Quellzustand

Beispiel

var Report: TPdfAMetadataReport;
Report := Pdf1.InspectPdfAMetadata;
if Report.HasXmpPacket and not Report.IsEquivalent then
  ShowMessage(IntToStr(Length(Report.Comparisons)) + ' fields inspected');

Siehe auch

NormalizePdfAMetadata, ValidatePdfA, ReadXmpPacket, FPdfXmp