AddRoleMapA

Tagged PDF, Přístupnost

Popis

Koncové A označuje vstupní bod DLL pro ANSI (char); povrch ActiveX/COM vystavuje jen Unicode formu. Chování je shodné s AddRoleMap a řetězcové argumenty se interpretují podle aktuální kódové stránky SetAnsiMode

Zaregistruje ve slovníku RoleMap dokumentu mapování z názvu vlastního typu strukturálního prvku na standardní PDF strukturální typ

Když tagovaný PDF obsah používá nestandardní názvy tagů (např. typy prvků specifické pro firmu nebo aplikaci), specifikace PDF vyžaduje namapování těchto názvů na standardní typ struktury PDF v položce /RoleMap kořene stromu struktury. ISO 14289-1 §7.1 toto mapování vyžaduje u všech dokumentů PDF/UA-1, které obsahují nestandardní typy prvků struktury

AddRoleMap zavolejte jednou pro každý vlastní typ, než tento typ použijete v BeginTag nebo BeginTagEx. Zaregistrovat lze více mapování. Je-li stejný vlastní typ zaregistrován vícekrát, platí poslední mapování

Při uložení dokumentu se RoleMap zapíše do kořene stromu struktury, je-li zaregistrováno alespoň jedno mapování

Syntaxe

Delphi

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

DLL

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

Parametry

CustomTypeNázev vlastního (nestandardního) typu strukturálního prvku používaného ve voláních BeginTag nebo BeginTagEx, například Headline, Caption, Callout
StandardTypeThe standard PDF structure type that the custom type maps to: P, H1H6, Figure, Table, Span, Link, Note, etc. (see ISO 32000-1 §14.8.4). Must be a recognized standard type for the mapping to satisfy PDF/UA conformance checkers.

Návratové hodnoty

0Failed (no document is open)
1Mapping registered successfully

Příklad

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