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
| CustomType | Ná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 |
|---|---|
| StandardType | The standard PDF structure type that the custom type maps to: P, H1–H6, 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
| 0 | Failed (no document is open) |
|---|---|
| 1 | Mapping 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;