SetOptionalContentMembership
Fluxos de conteúdo e grupos de conteúdo opcional
Descrição
Substitui atomicamente a lista de grupos, a política de compatibilidade e a expressão opcional de visibilidade do PDF 1.6 de um dicionário de associação
Sintaxe
Function TPDFlib.SetOptionalContentMembership(MembershipID: Integer; Const OptionalContentGroupIDs: Array Of Integer; Policy: TPDFlibOCMDPolicy; Const Expression: Array Of TPDFlibOCMDExpressionItem): Integer;Parâmetros
| MembershipID | Um identificador devolvido por NewOptionalContentMembership |
|---|---|
| OptionalContentGroupIDs | Uma matriz de grupos não vazia conservada como alternativa de compatibilidade |
| Policy | A política de contingência /P |
| Expression | Uma expressão de prefixo simples, ou uma matriz vazia para remover /VE |
Valores devolvidos
| 0 | A associação, os grupos ou a expressão eram inválidos e o dicionário existente não foi alterado |
|---|---|
| 1 | A associação foi atualizada |
Formato da expressão
O primeiro item tem de ser oekAnd, oekOr ou oekNot
oekNot requer um operando, enquanto oekAnd e oekOr requerem um ou mais operandos
Cada operador é seguido exatamente por OperandCount operandos de prefixo; os itens de grupo utilizam OperandCount = 0
// And(GroupA, Not(GroupB))
Expression[0].Kind := oekAnd;
Expression[0].OperandCount := 2;
Expression[1].Kind := oekGroup;
Expression[1].OptionalContentGroupID := GroupA;
Expression[2].Kind := oekNot;
Expression[2].OperandCount := 1;
Expression[3].Kind := oekGroup;
Expression[3].OptionalContentGroupID := GroupB;Observações
A validação e a construção de expressões são lineares relativamente ao número de itens, e o aninhamento está limitado a 64 níveis
Quando /VE está presente, a versão de saída é pelo menos PDF 1.6, enquanto /OCGs e /P permanecem disponíveis para leitores mais antigos
Consulte também
TPDFlibOCMDExpressionItem, EnumOptionalContentMembershipExpression