CheckDocumentPolicy

Documenteigenschappen, Naleving

Beschrijving

Evalueert een lijst declaratieve huisregels tegen het document en rapporteert welke regels slagen

Syntaxis

Delphi

Function TPDFlib.CheckDocumentPolicy(Const Rules: WideString): Integer;

Parameters

RulesEén assertie per regel in de vorm Group.Key op Value. Lege regels en regels die met # beginnen worden genegeerd

Retourwaarden

0Er is geen document geselecteerd, of de regeltekst is leeg
IDEen string-list-handle voor GetStringListCount en GetStringListItem; geef die vrij met ReleaseStringList

Opmerkingen

Regelonderwerpen richten zich op het feitenrapport dat GetDocumentFeatureReport produceert: de Group,Key,Value-regel Fonts,NotEmbedded,0 wordt aangesproken als Fonts.NotEmbedded. Ondersteunde operators zijn =, !=, <, <=, >, >= en exists; de vergelijking is numeriek wanneer beide kanten als getallen parsen, anders hoofdletterongevoelige tekst

Elke resultaatregel is pass of fail gevolgd door de regel en de feitelijke waarde, en de laatste regel is summary,N passed,M failed. Onbekende featuresleutels, misvormde regels en niet-ondersteunde operators worden als falen gerapporteerd in plaats van geruisloos genegeerd, dus een typfout in een beleidsbestand kan een document er niet conform laten uitzien

Zo wordt een ingangskeuring configuratie: uitgevers, archieven en drukkerijen kunnen volledig ingesloten fonts, verboden versleuteling, paginagrenzen of verplichte metadata afdwingen zonder inspectiecode te schrijven

Voorbeeld

Rules:=
  'Fonts.NotEmbedded = 0'#13#10+
  'Security.Encrypted = no'#13#10+
  'Document.Pages <= 500'#13#10+
  'Document.Title exists';
ListID:= PDF.CheckDocumentPolicy(Rules);
Last:= PDF.GetStringListItem(ListID, PDF.GetStringListCount(ListID));
if Pos('0 failed', Last)= 0 then
  ShowMessage('document rejected by policy');
PDF.ReleaseStringList(ListID);

Zie ook

GetDocumentFeatureReport, CheckDocumentStructure, CheckFileCompliance