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
| WritingMode | Smer 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