SetStructElemWritingMode

PDF etiquetado, Accesibilidad

Descripción

Establece el atributo /WritingMode (propietario del atributo Layout) en el elemento de estructura abierto actualmente en la pila de etiquetas. El modo de escritura declara la dirección principal de escritura del texto dentro del elemento y afecta a cómo interpretan el orden de lectura las tecnologías de asistencia. Equivale a llamar a AddTagAttribute con Owner=Layout, Name=WritingMode y el nombre del modo como valor

Sintaxis

Delphi

Function TPDFlib.SetStructElemWritingMode(Const WritingMode: WideString): Integer;

ActiveX

Function PDFlib::SetStructElemWritingMode(WritingMode As String) As Long

DLL

int DLSetStructElemWritingMode(int InstanceID, const wchar_t * WritingMode);

Parámetros

WritingModeLa dirección de escritura del elemento. Debe ser uno de los siguientes valores (distingue mayúsculas y minúsculas):

LrTb — de izquierda a derecha y de arriba abajo (predeterminado; latín, cirílico, griego y la mayoría de escrituras)
RlTb — de derecha a izquierda y de arriba abajo (árabe, hebreo)
TbRl — de arriba abajo y de derecha a izquierda (texto vertical CJK tradicional)

Valor devuelto

Devuelve 1 si se ejecuta correctamente. Devuelve 0 si no hay ningún documento abierto o ninguna etiqueta abierta en la pila de etiquetas

Observaciones

Llame a esta función después de BeginTag o BeginTagEx y antes de EndTag. El atributo /WritingMode se define en ISO 32000-1 §14.8.5.4.2 (propietario del atributo Layout, Tabla 340)

Con dirección uniforme no es necesario fijar /WritingMode en cada elemento; LrTb es predeterminado. Fíjelo en bloques cuya dirección difiera, como una cita hebrea en un párrafo inglés

PDF/UA-1 §7.2 exige idioma inequívoco. /WritingMode complementa /Lang (SetStructElemLang): /Lang declara idioma y /WritingMode la dirección física para tecnología asistencial

Ejemplo

// Arabic paragraph — right-to-left writing direction
PDFlib.BeginTagEx('P', '', '', 'ar-SA');
PDFlib.SetStructElemWritingMode('RlTb');
PDFlib.DrawText('...Arabic text...', 450, 700);
PDFlib.EndTag;

// Vertical CJK heading
PDFlib.BeginTagEx('H1', '', '', 'zh-TW');
PDFlib.SetStructElemWritingMode('TbRl');
PDFlib.DrawText('...CJK vertical text...', 500, 700);
PDFlib.EndTag;

Véase también

SetStructElemBBox, SetStructElemLang, AddTagAttribute, BeginTag, EndTag