SetStructElemWritingMode

Tagged PDF, Pristupačnost

Opis

Postavlja /WritingMode atribut (vlasnik atributa Layout) na elementu strukture trenutno otvorenom na steku tagova. Writing mode deklariše glavni smer pisanja teksta u elementu i utiče na to kako asistivne tehnologije tumače red čitanja. Ekvivalentno pozivu AddTagAttribute sa Owner=Layout, Name=WritingMode i imenom režima kao vrednošću

Sintaksa

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

Parametri

WritingModeSmer pisanja za element. Mora biti jedna od sledećih vrednosti (razlikuju velika i mala slova):

LrTb — s leva na desno, odozgo nadole (podrazumevano; latinica, ćirilica, grčki i većina pisama)
RlTb — s desna na levo, odozgo nadole (arapski, hebrejski)
TbRl — odozgo nadole, s desna na levo (tradicionalni vertikalni CJK tekst)

Povratna vrednost

Vraća 1 u slučaju uspeha. Vraća 0 ako nijedan dokument nije otvoren ili ako nijedan tag nije trenutno otvoren na steku tagova

Napomene

Pozovite ovu funkciju nakon BeginTag ili BeginTagEx i pre EndTag. Atribut /WritingMode definisan je u ISO 32000-1 §14.8.5.4.2 (vlasnik atributa Layout, Tabela 340).

Kada dokument u celini koristi dosledan smer pisanja, nije potrebno postavljati /WritingMode na svaki element — podrazumevani LrTb važi kada atribut odsustvuje. Atribut postavite eksplicitno na elementima na nivou bloka čiji se smer pisanja razlikuje od okolnog sadržaja, na primer hebrejski citat ugrađen u pasus na engleskom.

PDF/UA-1 (ISO 14289-1 §7.2) zahteva da prirodni jezik svakog dela teksta bude nedvosmisleno odrediv. /WritingMode dopunjuje atribut /Lang (SetStructElemLang): /Lang deklariše koji se jezik govori, dok /WritingMode deklariše fizički smer pisanja koji asistivna tehnologija treba da koristi za prikaz.

Primer

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

Vidi takođe

SetStructElemBBox, SetStructElemLang, AddTagAttribute, BeginTag, EndTag