AddRoleMapA

PDF balisé, accessibilité

Description

Le A final indique le point d’entrée de DLL ANSI (char); l’interface ActiveX/COM n’expose que la forme Unicode. Le comportement est identique à AddRoleMap et les arguments de chaîne sont interprétés selon la page de codes SetAnsiMode actuelle

Enregistre dans le dictionnaire RoleMap d'un document une association entre un nom de type d'élément de structure personnalisé et un type de structure PDF standard

Lorsque le contenu PDF balisé utilise des noms non standard, par exemple des types propres à une entreprise ou application, la spécification exige leur correspondance avec un type standard dans l’entrée /RoleMap de la racine de l’arbre. ISO 14289-1 §7.1 impose cette correspondance à tout document PDF/UA-1 contenant des types personnalisés

Appelez AddRoleMap une fois par type personnalisé avant d’appeler BeginTag ou BeginTagEx avec ce type. Plusieurs correspondances peuvent être enregistrées. Si un type est enregistré plusieurs fois, la dernière correspondance l’emporte

Le RoleMap est écrit à la racine de l'arborescence de structure lors de l'enregistrement du document si au moins une association a été enregistrée

Syntaxe

Delphi

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

DLL

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

Paramètres

CustomTypeNom de type d’élément de structure personnalisé (non standard) utilisé dans les appels BeginTag ou BeginTagEx, par exemple Headline, Caption ou Callout
StandardTypeType de structure PDF standard auquel correspond le type personnalisé : P, H1–H6, Figure, Table, Span, Link, Note, etc. (voir ISO 32000-1 §14.8.4). Il doit être reconnu comme type standard par les vérificateurs PDF/UA

Valeurs de retour

0Échec (aucun document n’est ouvert)
1Mappage enregistré correctement

Exemple

// 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;