PDFium Component Docs

InspectPdfAMetadata Metoda

Component: TPdf  ·  Unit: PDFium
Raportuje dokładną równoważność Info-to-XMP wg ISO 19005-1 dla aktywnego dokumentu

Syntax

function InspectPdfAMetadata: TPdfAMetadataReport;

ResultTPdfAMetadataReport zawierający dostępność XMP, tekst błędu parsowania, pola niezgodności i osiem porównań poszczególnych pól

Description

Metoda odczytuje Title, Author, Subject, Keywords, Creator, Producer, CreationDate i ModDate przez PDFium, więc ciągi PDFDocEncoding i UTF-16 używają tego samego dekodowania Unicode co żywy dokument

Surowa inspekcja słownika zapisuje, czy każdy klucz Info istnieje niezależnie od swojej wartości, więc jawnie pusty ciąg nie jest traktowany jako klucz nieobecny

Title i Subject wymagają wartości rdf:Alt otagowanej x-default; Author wymaga rdf:Seq zawierającego dokładnie jedną wartość; pozostałe mapowania wymagają prostej właściwości znalezionej po URI przestrzeni nazw i nazwie lokalnej

Wartości tekstowe są porównywane po dokładnych punktach kodowych Unicode; daty są porównywane jako lokalne składowe, gdy żadna z wartości nie ma strefy czasowej, albo jako chwile UTC, gdy obie wartości mają strefy czasowe

TPdfAMetadataState rozróżnia stany: niewymagane, równoważne, brak XMP, zły typ RDF, niezgodność wartości, nieprawidłowa data Info i nieprawidłowa data XMP

Metoda jest tylko do odczytu, wymaga aktywnego dokumentu i nie modyfikuje stanu PDFium ani dokumentu źródłowego

Example

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

See Also

NormalizePdfAMetadata, ValidatePdfA, ReadXmpPacket, FPdfXmp