CheckDocumentPolicy
Dokumentegenskaber, Overensstemmelse
Beskrivelse
Evaluerer en liste med deklarative interne regler mod dokumentet og rapporterer, hvilke der består
Syntaks
Delphi
Function TPDFlib.CheckDocumentPolicy(Const Rules: WideString): Integer;Parametre
| Rules | Én assertion pr. linje i formen Group.Key op Value. Tomme linjer og linjer, der begynder med #, ignoreres. |
|---|
Returværdier
| 0 | Intet dokument er valgt, eller regelteksten er tom. |
|---|---|
| ID | Et strenglistehandle til GetStringListCount og GetStringListItem; frigiv det med ReleaseStringList. |
Bemærkninger
Regelemner adresserer den funktionsrapport, der produceres af GetDocumentFeatureReport: Linjen Group,Key,Value Fonts,NotEmbedded,0 adresseres som Fonts.NotEmbedded. Understøttede operatorer er =, !=, <, <=, >, >= og exists; sammenligningen er numerisk, når begge sider kan fortolkes som tal, og ellers tekstbaseret uden forskel på store og små bogstaver.
Hver resultatlinje er pass eller fail efterfulgt af reglen og den faktiske værdi, og den sidste linje er summary,N passed,M failed. Ukendte funktionsnøgler, fejlformede regler og ikke-understøttede operatorer rapporteres som fejl i stedet for at blive ignoreret, så en slåfejl i en politikfil ikke kan få et dokument til at fremstå som overensstemmende
Dette gør en modtagelseskontrol til konfiguration: Udgivere, arkiver og trykkerier kan kræve fuldt integrerede skrifttyper, forbyde kryptering, angive sidegrænser eller kræve metadata uden at skrive inspektionskode.
Eksempel
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);Se også
GetDocumentFeatureReport, CheckDocumentStructure, CheckFileCompliance