AddRoleMapA

PDF con tag, accessibilità

Descrizione

Il suffisso A indica l'entry point DLL ANSI (char); l'interfaccia ActiveX/COM espone soltanto la forma Unicode. Il comportamento è identico a AddRoleMap e gli argomenti stringa vengono interpretati usando la code page corrente di SetAnsiMode

Registra una mappatura da un nome di tipo personalizzato a un tipo di struttura PDF standard nel dizionario RoleMap del documento.

Quando il contenuto PDF con tag usa nomi di tag non standard, ad esempio tipi di elemento specifici dell'azienda o dell'applicazione, la specifica PDF richiede che tali nomi vengano mappati a un tipo di struttura PDF standard nella voce /RoleMap della radice dell'albero della struttura. ISO 14289-1 §7.1 impone questa mappatura per tutti i documenti PDF/UA-1 contenenti tipi di elementi strutturali non standard

Chiamare AddRoleMap una volta per ciascun tipo personalizzato prima di chiamare BeginTag o BeginTagEx con tale tipo. È possibile registrare più mappature; se lo stesso tipo viene registrato più volte, prevale l'ultima mappatura

RoleMap viene scritto nella radice dell'albero della struttura quando il documento viene salvato, se è stata registrata almeno una mappatura.

Sintassi

Delphi

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

DLL

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

Parametri

CustomTypeNome del tipo strutturale personalizzato usato in BeginTag o BeginTagEx, ad esempio Headline, Caption, Callout
StandardTypeTipo standard a cui viene mappato quello personalizzato: P, H1–H6, Figure, Table, Span, Link, Note e così via (ISO 32000-1 §14.8.4). Deve essere riconosciuto per soddisfare PDF/UA

Valori restituiti

0Operazione non riuscita (nessun documento aperto)
1Mappatura registrata correttamente

Esempio

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