AddRoleMapA
Taggad PDF, tillgänglighet
Beskrivning
Det avslutande A:et betecknar ANSI (char)-DLL-ingångspunkten; ActiveX/COM-ytan exponerar bara Unicode-formen. Beteendet är identiskt med AddRoleMap och strängargument tolkas med aktuell SetAnsiMode-kod sidaRegistrerar en mappning från ett anpassat strukturelementtypnamn till en standard PDF-strukturtyp i dokumentets
RoleMap-dictionary.När taggat PDF-innehåll använder icke-standardiserade taggnamn (t.ex. företags- eller programspecifika elementtyper) kräver PDF-specifikationen att dessa namn mappas till en standard PDF-strukturtyp i strukturträdets
/RoleMap-posten. ISO 14289-1 §7.1 kräver denna mappning för alla PDF/UA-1-dokument som innehåller icke-standardiserade strukturelementtyper. Anropa
AddRoleMap en gång per anpassad typ, innan du anropar BeginTag eller BeginTagEx med den typen. Flera mappningar kan registreras. Om samma anpassade typ registreras mer än en gång vinner den senaste mappningen.
RoleMap skrivs till strukturträdets rot när dokumentet sparas, om minst en mappning registrerats
Syntax
Delphi
Function DLAddRoleMapA(InstanceID: Integer; CustomType, StandardType: PAnsiChar): Integer;
DLL
int DLAddRoleMapA(int InstanceID, const char * CustomType, const char * StandardType);
Parametrar
| CustomType | Det anpassade (icke-standardiserade) strukturelementtypnamnet som används i BeginTag- eller BeginTagEx-anrop, t.ex. Headline, Caption, Callout |
|---|---|
| StandardType | Den standardiserade PDF-strukturtyp som den anpassade typen mappas till: P, H1–H6, Figure, Table, Span, Link, Note osv. (se ISO 32000-1 §14.8.4). Måste vara en känd standardtyp för att mappningen ska klara PDF/UA-kontrollerna. |
Returvärden
| 0 | Misslyckades (inget dokument är öppet) |
|---|---|
| 1 | Mapping registered successfully |
Exempel
// 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;