mirror of
https://gitee.com/zlgopen/awtk.git
synced 2024-11-29 18:48:09 +08:00
1.3 KiB
1.3 KiB
如何启用文本双向排版 (Unicode Bidirectional Algorithm)
1. 启用文本双向排版算法
定义宏 WITH_TEXT_BIDI 即可,嵌入式版本请修改 awtk_config.h:
/**
* 如果希望支持文字双向排版算法(如阿拉伯语言),请定义本宏。
*
* #define WITH_TEXT_BIDI 1
*
*/
PC 版本默认已经定义。
2. 加入相关文件
3rd/fribidi/fribidi-arabic.c
3rd/fribidi/fribidi-bidi-types.c
3rd/fribidi/fribidi-bidi.c
3rd/fribidi/fribidi-brackets.c
3rd/fribidi/fribidi-deprecated.c
3rd/fribidi/fribidi-joining-types.c
3rd/fribidi/fribidi-joining.c
3rd/fribidi/fribidi-mirroring.c
3rd/fribidi/fribidi-run.c
3rd/fribidi/fribidi-shape.c
3rd/fribidi/fribidi.c
src/base/bidi.c
PC 版本默认已经加。
3. 控件的 bidi 属性
默认情况下,文字的方向自动确定,如果在某些情况下,需要自己指定,可以通过 bidi 属性来实现。
示例:
<label text="1. جامعة كولومبيا عام." style:font_size="30" style:font_name="trado" bidi="lro"/>
bidi 的可选值有:
- rtl Right-To-Left letter。
- ltr Left-To-Right letter。
- auto Auto Detection
- wrtl Weak Right To Left paragraph。
- wltr Weak Left To Right paragraph。
- lro Left-To-Right letter Override。
- rlo Right-To-Left letter Override。