如何解决泰语键盘布局和 UCHAR_DEFAULT_IGNORABLE_CODE_POINT
我正在使用 icu lib unicord-org 来处理键盘输入。
如果我加载泰语键盘布局并按下键 fe
(ดำ) 然后 e
(ำ) 与前一个字符 f
(ด) 结合
u_charType
为 e
返回的 unicode 字符类型为 UCHAR_DEFAULT_IGnorABLE_CODE_POINT
如何确定 e
是否与后续字符 f
是有效组合?
这是我目前想到的...
UChar32 newChar;
UChar32 prevIoUsChar;
int32_t gcb = u_getIntPropertyValue(newChar,UCHAR_GRAPHEME_CLUSTER_BREAK);
if (gcb != U_GCB_OTHER)
{
int32_t insc = u_getIntPropertyValue(newChar,UCHAR_INDIC_SYLLABIC_CATEGORY);
if (insc == U_INSC_VOWEL_DEPENDENT || insc == U_INSC_TONE_MARK)
{
if (u_getIntPropertyValue(prevChar,UCHAR_INDIC_SYLLABIC_CATEGORY) != U_INSC_CONSONANT)
{
// invalid combination,ignore
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。