SetStructElemLang

Tagged PDF & Accessibility

Description

Sätter /Lang-posten på det strukturelement som för tillfället byggs på taggstacken. Språktaggen åsidosätter dokumentnivåspråket för det här elementet och alla dess ättlingar, så att flerspråkiga dokument kan deklarera rätt naturligt språk för varje innehållsavsnitt

Syntax

Delphi

Function TPDFlib.SetStructElemLang(Const Lang: WideString): Integer;

ActiveX

Function PDFlib::SetStructElemLang(Lang As String) As Long

DLL

int DLSetStructElemLang(int InstanceID, const wchar_t * Lang);

Parameters

LangEn BCP 47-språktaggsträng, som en-US, fr, de-CH eller zh-Hant-TW. Ange en tom sträng för att rensa ett tidigare satt värde och ärva dokumentnivåspråket

Return value

Returnerar 1 vid lyckat anrop, 0 om inget strukturelement för tillfället är öppet eller inget dokument är valt

Remarks

Anropa den här funktionen omedelbart efter BeginTag eller BeginTagEx medan målelementet ligger överst på taggstacken. Det är ekvivalent med att skicka ett icke-tomt Lang-argument till BeginTagEx, men kan vara bekvämare när språket bestäms separat från elementtypen

Posten /Lang på elementnivå är definierad i ISO 32000-1 §14.9.2. Den gäller strukturelementet och, genom arv, alla barelement som inte själva deklarerar en /Lang. Skärmläsare använder posten för att välja lämplig text-till-tal-röst eller språkmotor när dokumentet läses upp

PDF/UA-1 (ISO 14289-1 §7.3) kräver att allt innehåll med naturligt språk identifieras. Dokumentnivåns /Lang som sätts av SetDocumentLanguage eller SetPDFUAMode täcker primärspråket; SetStructElemLang täcker avsnitt vars språk skiljer sig från primärspråket

Example

// A French phrase embedded in an English document
PDFlib.SetPDFUAMode('en-US');
// ... English content
PDFlib.BeginTag('P', '', '');
PDFlib.SetStructElemLang('fr');
PDFlib.TextOut(x, y, 'Bonjour le monde');
PDFlib.EndTag;

See also

BeginTagEx, SetDocumentLanguage, SetPDFUAMode, SetStructElemActualText, GetPDFUADiagnostics