AddRoleMapA

PDF etiquetado, acessibilidade

Descrição

O A final indica o ponto de entrada ANSI (char) da DLL; a interface ActiveX/COM expõe apenas a forma Unicode. O comportamento é idêntico ao de AddRoleMap e os argumentos de cadeia são interpretados utilizando a página de códigos atual de SetAnsiMode

Regista um mapeamento de um nome personalizado de tipo de elemento de estrutura para um tipo de estrutura PDF padrão no dicionário RoleMap do documento

Quando o conteúdo PDF etiquetado utiliza nomes de etiquetas não padrão (por exemplo, tipos de elementos específicos de uma empresa ou aplicação), a especificação PDF exige que esses nomes sejam mapeados para um tipo de estrutura PDF padrão na entrada /RoleMap da raiz da árvore de estrutura. ISO 14289-1 §7.1 exige este mapeamento para todos os documentos PDF/UA-1 que contenham tipos de elementos de estrutura não padrão

Chame AddRoleMap uma vez por tipo personalizado, antes de chamar BeginTag ou BeginTagEx com esse tipo. É possível registar vários mapeamentos. Se o mesmo tipo personalizado for registado mais do que uma vez, prevalece o último mapeamento

O RoleMap é escrito na raiz da árvore de estrutura quando o documento é guardado, desde que tenha sido registado pelo menos um mapeamento

Sintaxe

Delphi

Function DLAddRoleMapA(InstanceID: Integer; CustomType, StandardType: PAnsiChar): Integer;

DLL

int DLAddRoleMapA(int InstanceID, const char * CustomType, const char * StandardType);

Parâmetros

CustomTypeO nome de tipo de elemento de estrutura personalizado (não padrão) utilizado nas chamadas de BeginTag ou BeginTagEx, por exemplo, Headline, Caption, Callout
StandardTypeO tipo de estrutura PDF padrão para o qual o tipo personalizado é mapeado: P, H1H6, Figure, Table, Span, Link, Note, etc. (consulte ISO 32000-1 §14.8.4). Tem de ser um tipo padrão reconhecido para que o mapeamento satisfaça os verificadores de conformidade PDF/UA

Valores devolvidos

0Falha (nenhum documento aberto)
1Mapeamento registado com êxito

Exemplo

// Document with custom element types mapped to standard PDF structure types
PDF.SetPDFUAMode('en-US');
PDF.AddRoleMap('Headline', 'H1');
PDF.AddRoleMap('Subheadline', 'H2');
PDF.AddRoleMap('Caption', 'P');

PDF.BeginTag('Headline', '', '');
PDF.PrintText(50, 750, 'Annual Report 2026');
PDF.EndTag;

PDF.BeginTag('Subheadline', '', '');
PDF.PrintText(50, 720, 'Financial Highlights');
PDF.EndTag;