AddRoleMap

Tagged PDF, Tilgængelighed

Beskrivelse

Registrerer en tilknytning fra et brugerdefineret navn på en strukturelementtype til en PDF-standardstrukturtype i dokumentets RoleMap-ordbog.

Når tagged PDF-indhold bruger ikke-standardiserede tagnavne (f.eks. virksomhedsspecifikke eller programspecifikke elementtyper), kræver PDF-specifikationen, at disse navne tilknyttes en standard-PDF-strukturtype i strukturtrærodens /RoleMap-post. ISO 14289-1 §7.1 kræver denne tilknytning for alle PDF/UA-1-dokumenter, der indeholder ikke-standardiserede strukturelementtyper

Kald AddRoleMap én gang for hver brugerdefineret type, før BeginTag eller BeginTagEx kaldes med denne type. Der kan registreres flere tilknytninger. Hvis den samme brugerdefinerede type registreres mere end én gang, vinder den seneste tilknytning.

RoleMap skrives til strukturtræets rod, når dokumentet gemmes, hvis mindst én tilknytning er registreret

Syntaks

Delphi

Function TPDFlib.AddRoleMap(Const CustomType, StandardType: WideString): Integer;

ActiveX

Function PDFlib::AddRoleMap(CustomType As String, StandardType As String) As Long

DLL

int DLAddRoleMap(int InstanceID, const wchar_t * CustomType, const wchar_t * StandardType);

Parametre

CustomTypeNavnet på den brugerdefinerede (ikke-standardiserede) strukturelementtype, der bruges i kald til BeginTag eller BeginTagEx, f.eks. Headline, Caption, Callout.
StandardTypeDen standard-PDF-strukturtype, som den brugerdefinerede type knyttes til: P, H1H6, Figure, Table, Span, Link, Note osv. (se ISO 32000-1 §14.8.4). Skal være en anerkendt standardtype, før tilknytningen opfylder PDF/UA-overensstemmelseskontroller.

Returværdier

0Mislykkedes (intet dokument er åbent)
1Tilknytningen blev registreret

Eksempel

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