SetStructElemWritingMode
PDF Terlabeli, Aksesibilitas
Deskripsi
Mengeset attribute /WritingMode (owner attribute Layout) pada structure element yang sedang terbuka di tag stack. Writing mode mendeklarasikan arah penulisan utama teks di dalam elemen dan memengaruhi cara teknologi assistive menafsirkan urutan baca. Setara dengan memanggil AddTagAttribute dengan Owner=Layout, Name=WritingMode, dan nama mode sebagai nilainya
Sintaks
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);
Parameter
| WritingMode | Arah penulisan untuk elemennya. Harus salah satu nilai berikut (case sensitive): LrTb — kiri ke kanan, atas ke bawah (default; Latin, Kiril, Yunani, dan kebanyakan aksara) RlTb — kanan ke kiri, atas ke bawah (Arab, Ibrani) TbRl — atas ke bawah, kanan ke kiri (teks vertikal CJK tradisional) |
|---|
Nilai kembali
Mengembalikan 1 jika sukses. Mengembalikan 0 jika tidak ada dokumen yang terbuka atau tidak ada tag yang sedang terbuka di tag stack
Catatan
Panggil fungsi ini setelah BeginTag atau BeginTagEx dan sebelum EndTag. Attribute /WritingMode didefinisikan di ISO 32000-1 §14.8.5.4.2 (owner attribute Layout, Table 340)
Saat dokumen memakai arah penulisan yang konsisten di seluruhnya, tidak perlu mengeset /WritingMode di setiap elemen — default LrTb berlaku saat attribute itu tidak ada. Set attribute-nya eksplisit pada elemen block-level yang arah penulisannya berbeda dari konten di sekitarnya, misalnya kutipan Ibrani di dalam paragraf Inggris
PDF/UA-1 (ISO 14289-1 §7.2) mewajibkan bahasa alami setiap potongan teks bisa ditentukan tanpa ambiguitas. /WritingMode melengkapi attribute /Lang (SetStructElemLang): /Lang mendeklarasikan bahasa apa yang dibacakan, sedangkan /WritingMode mendeklarasikan arah penulisan fisik yang seharusnya dipakai teknologi assistive untuk penyajiannya
Contoh
// 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;Lihat juga
SetStructElemBBox, SetStructElemLang, AddTagAttribute, BeginTag, EndTag