PDFium Delphi Component Docs

метод NormalizePdfAMetadata

Компонент: TPdf  ·  Модул: PDFium
Поправя несъответствията на стойности между Info и XMP по ISO 19005-1 и записва нормализирания документ

Синтаксис

function NormalizePdfAMetadata(Stream: TStream; AllowSignedDocument: Boolean = False): Boolean; overload;
function NormalizePdfAMetadata(const FileName: string; AllowSignedDocument: Boolean = False): Boolean; overload;

ResultTrue, когато документът е записан успешно
AllowSignedDocumentПозволява нова неподписана ревизия след съществуващите подписи

Описание

Методът сравнява осемте съответствия от Table 1 на ISO 19005-1 и обновява само свойствата, изисквани от наличните Info ключове, които липсват, са със сгрешен тип, невалидни или неравни

Title и Subject се записват в езиковата алтернатива x-default, докато другите езици остават недокоснати; Author се записва като подредена последователност с един елемент; скаларните свойства запазват несвързаните си namespaces и свойства

Валидни Info дати с часови зони се сериализират като канонични UTC XMP дати; деформирани Info дати вдигат EPdfXmpError вместо да запишат подвеждащи метаданни

Операцията изисква съществуващ XMP пакет и вдига EPdfError, когато такъв липсва; използвайте SaveAsPdfA, когато пълна PDF/A идентификация и метаданни трябва да бъдат създадени

Файловият резултат използва атомарно заместване и двете претоварвания следват същата политика за подписани документи като SaveAsWithXmpPacket

Пример

var Report: TPdfAMetadataReport;
Report := Pdf1.InspectPdfAMetadata;
if not Report.IsEquivalent then
  Pdf1.NormalizePdfAMetadata('C:\Output\normalized.pdf');

Виж също

InspectPdfAMetadata, ValidatePdfA, SaveAsWithXmpPacket, FPdfXmp