CheckDocumentPolicy
Propriedades do documento, conformidade
Descrição
Avalia uma lista de regras internas declarativas face ao documento e indica quais são satisfeitas
Sintaxe
Delphi
Function TPDFlib.CheckDocumentPolicy(Const Rules: WideString): Integer;Parâmetros
| Rules | Uma asserção por linha no formato Group.Key op Value. As linhas vazias e as linhas que começam por # são ignoradas |
|---|
Valores devolvidos
| 0 | Não está selecionado qualquer documento ou o texto da regra está vazio |
|---|---|
| ID | Um identificador de lista de cadeias para GetStringListCount e GetStringListItem; liberte-o com ReleaseStringList |
Observações
Os sujeitos das regras referem-se ao relatório de funcionalidades produzido por GetDocumentFeatureReport: a linha Group,Key,Value Fonts,NotEmbedded,0 é referida como Fonts.NotEmbedded. Os operadores suportados são =, !=, <, <=, >, >= e exists; a comparação é numérica quando ambos os lados podem ser analisados como números e, caso contrário, utiliza texto sem distinção entre maiúsculas e minúsculas
Cada linha de resultados contém pass ou fail, seguido da regra e do valor efetivo, e a última linha é summary,N passed,M failed. As chaves de funcionalidades desconhecidas, regras malformadas e operadores não suportados são indicados como falhas em vez de serem silenciosamente ignorados, pelo que um erro ortográfico num ficheiro de políticas não pode fazer um documento parecer conforme
Isto transforma uma barreira de ingestão em configuração: editores, arquivos e tipografias podem impor tipos de letra totalmente incorporados, proibir encriptação, definir limites de páginas ou exigir metadados sem escrever código de inspeção
Exemplo
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);Consulte também
GetDocumentFeatureReport, CheckDocumentStructure, CheckFileCompliance