SetStructElemLang
Tagged PDF & acessibilidade
Descrição
Define a entrada /Lang no elemento de estrutura que está atualmente a ser criado na pilha de etiquetas. A etiqueta de idioma substitui o idioma ao nível do documento para este elemento e todos os seus descendentes, permitindo que documentos multilingues declarem o idioma natural correto para cada intervalo de conteúdo
Sintaxe
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);
Parâmetros
| Lang | Uma cadeia de etiqueta de idioma BCP 47, como en-US, fr, de-CH ou zh-Hant-TW. Passe uma cadeia vazia para limpar um valor definido anteriormente e herdar o idioma ao nível do documento |
|---|
Valor devolvido
Devolve 1 em caso de êxito ou 0 se nenhum elemento de estrutura estiver atualmente aberto ou nenhum documento estiver selecionado
Observações
Chame esta função imediatamente depois de BeginTag ou BeginTagEx, enquanto o elemento de destino estiver no topo da pilha de etiquetas. Equivale a passar um argumento Lang não vazio a BeginTagEx, mas pode ser mais conveniente quando o idioma é determinado separadamente do tipo do elemento
A entrada /Lang ao nível do elemento é definida na ISO 32000-1 §14.9.2. Aplica-se ao elemento de estrutura e, por herança, a todos os elementos subordinados que não declarem eles próprios uma entrada /Lang. Os leitores de ecrã utilizam esta entrada para selecionar a voz de conversão de texto em voz ou o motor de idioma adequado ao lerem o documento em voz alta
PDF/UA-1 (ISO 14289-1 §7.3) exige que todo o conteúdo em linguagem natural seja identificado. O /Lang ao nível do documento definido por SetDocumentLanguage ou SetPDFUAMode abrange o idioma principal; SetStructElemLang abrange as secções cujo idioma difere do principal
Exemplo
// 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;Consulte também
BeginTagEx, SetDocumentLanguage, SetPDFUAMode, SetStructElemActualText, GetPDFUADiagnostics