CheckDocumentPolicy
Propriétés du document, conformité
Description
Évalue une liste de règles internes déclaratives par rapport au document et indique celles qui sont satisfaites
Syntaxe
Delphi
Function TPDFlib.CheckDocumentPolicy(Const Rules: WideString): Integer;Paramètres
| Rules | Une assertion par ligne sous la forme Group.Key op Value. Les lignes vides et celles commençant par # sont ignorées |
|---|
Valeurs de retour
| 0 | Aucun document n’est sélectionné ou le texte de la règle est vide |
|---|---|
| ID | Handle de liste de chaînes pour GetStringListCount et GetStringListItem ; libérez-le avec ReleaseStringList |
Remarques
Les sujets de règle visent le rapport de GetDocumentFeatureReport : la ligne Group,Key,Value Fonts,NotEmbedded,0 devient Fonts.NotEmbedded. Opérateurs : =, !=, <, <=, >, >= et exists ; la comparaison est numérique si les deux côtés sont des nombres, sinon textuelle sans distinction de casse
Chaque ligne de résultat contient pass ou fail, suivi de la règle et de la valeur réelle ; la dernière vaut summary,N passed,M failed. Les clés inconnues, règles mal formées et opérateurs non pris en charge sont signalés comme échecs afin qu’une faute dans une stratégie ne puisse pas faire croire à la conformité
Cette fonction transforme une barrière d’ingestion en configuration : les éditeurs, services d’archives et imprimeurs peuvent imposer l’incorporation complète des polices, interdire le chiffrement, limiter le nombre de pages ou exiger certaines métadonnées sans écrire de code d’inspection
Exemple
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);Voir aussi
GetDocumentFeatureReport, CheckDocumentStructure, CheckFileCompliance