SetStructElemWritingMode
Tagged PDF, Tilgængelighed
Beskrivelse
Indstiller attributten /WritingMode (Layout-attributindehaver) på det strukturelement, der aktuelt er åbent på tagstakken. Skrivetilstanden angiver tekstens primære skriveretning i elementet og påvirker, hvordan kompenserende teknologi fortolker læserækkefølgen. Svarer til at kalde AddTagAttribute med Owner=Layout, Name=WritingMode og tilstandsnavnet som værdi.
Syntaks
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);
Parametre
| WritingMode | Skriveretningen for elementet. Skal være en af følgende værdier (forskel på store og små bogstaver): LrTb — venstre mod højre, top til bund (standard; latinsk, kyrillisk, græsk og de fleste skriftsystemer) RlTb — højre mod venstre, top til bund (arabisk, hebraisk) TbRl — top til bund, højre mod venstre (traditionel lodret CJK-tekst) |
|---|
Returværdi
Returnerer 1 ved succes. Returnerer 0, hvis intet dokument er åbent, eller intet tag aktuelt er åbent på tagstakken
Bemærkninger
Kald denne funktion efter BeginTag eller BeginTagEx og før EndTag. Attributten /WritingMode er defineret i ISO 32000-1 §14.8.5.4.2 (Layout-attributejer, tabel 340)
Når et dokument gennemgående bruger samme skriveretning, er det ikke nødvendigt at angive /WritingMode på hvert element — standarden LrTb gælder, når attributten mangler. Angiv attributten eksplicit på elementer på blokniveau, hvis skriveretning afviger fra det omgivende indhold, f.eks. et hebraisk citat indlejret i et engelsk afsnit
PDF/UA-1 (ISO 14289-1 §7.2) kræver, at det naturlige sprog for hvert tekststykke kan fastslås entydigt. /WritingMode supplerer attributten /Lang (SetStructElemLang): /Lang erklærer, hvilket sprog der tales, mens /WritingMode erklærer den fysiske skriveretning, som hjælpeteknologi skal bruge til præsentation.
Eksempel
// 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;Se også
SetStructElemBBox, SetStructElemLang, AddTagAttribute, BeginTag, EndTag