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

RulesUne assertion par ligne sous la forme Group.Key op Value. Les lignes vides et celles commençant par # sont ignorées

Valeurs de retour

0Aucun document n’est sélectionné ou le texte de la règle est vide
IDHandle 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