[发明专利]一种阿拉伯语显示方法有效
申请号: | 201910751511.X | 申请日: | 2019-08-15 |
公开(公告)号: | CN110609980B | 公开(公告)日: | 2023-03-14 |
发明(设计)人: | 崔晓珂 | 申请(专利权)人: | 崔晓珂 |
主分类号: | G06F40/109 | 分类号: | G06F40/109;G06F3/14;A63F13/52 |
代理公司: | 北京元本知识产权代理事务所(普通合伙) 11308 | 代理人: | 王红霞 |
地址: | 610225 四川省成都市*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 阿拉伯语 显示 方法 | ||
1.一种阿拉伯语显示方法,其特征在于,包括:
(1)将需要设置到文本控件上的文本字符串进行预处理;
(2)将预处理后的字符串根据文本控件的宽度进行分行处理,生成行字符串的列表;
(3)对分行后的字符串进行富文本标签补齐处理;
(4)对每行进行标签补齐处理后的字符串进行分块处理,将字符串按照阿拉伯字符块和非阿拉伯字符块进行分块,并且将阿拉伯字符块前的富文本开始标签和阿拉伯字符块后的富文本结束标签划分到阿拉伯字符块中;分块后对于每一个阿拉伯字符块和非阿拉伯字符块进行富文本标签补齐处理;然后再将各个字符块重新拼成一个新的字符串替换原有的行字符串;
(5)将步骤(4)中处理之后得到的每一行字符串按照支持的富文本标签进行分段处理,将阿拉伯字符串段前的富文本开始标签和阿拉伯字符串段后的富文本结束标签划分到阿拉伯字符串段中,将分段后的字符串和富文本标签组成一个字符串段的列表;
(6)将分段处理后的每一个字符串段进行分块处理,按照阿拉伯字符和非阿拉伯字符进行分块,并且将阿拉伯字符块前的富文本开始标签和阿拉伯字符块后的富文本结束标签划分到阿拉伯字符块中;
(7)将阿拉伯字符块拆分成字符节点,然后将阿拉伯字符节点进行反转处理,将各个字符节点进行拼接生成新的字符块替换原有的阿拉伯字符块;
(8)将各个字符串块按照反序的方式进行拼接生成新的字符串段,用新的字符串替换原字符串段的列表中的字符串段;
(9)将步骤(8)中得到的字符串段的列表中的富文本标签进行配对组合的开始标签和结束标签互换处理;
(10)将步骤(9)中得到的字符串段的列表按照反序的方式进行拼接生成新的字符串,用新的字符串替换原有的行字符串的列表中的行字符串;
(11)将步骤(10)得到的行字符串的列表进行拼接生成新的字符串;
(12)将步骤(11)得到的所述新的字符串设置在文本控件上进行显示。
2.根据权利要求1所述的阿拉伯语显示方法,其特征在于,所述步骤(3)中的对分行后的字符串进行富文本标签补齐处理包括:对于每一行字符串,如果开始标签在本行且对应的结束标签在也在本行,则该组标签不需要作处理;如果开始标签在本行,结束标签不在本行,而是在后面的某一行,则在本行的末尾添加该开始标签对应的结束标签;如果开始标签不在本行,而是在前面的某一行,结束标签在本行,则在本行的起始位置添加对应的开始标签。
3.根据权利要求1所述的阿拉伯语显示方法,其特征在于,所述步骤(4)中的所述分块后对于每一个阿拉伯字符块和非阿拉伯字符块进行富文本标签补齐处理包括:如果开始标签在本字符块且对应的结束标签也在本字符块,则该组标签不需要作处理;如果开始标签在本字符块,结束标签不在本字符块,而是在后面的某一字符块,则在本字符块的末尾添加该开始标签对应的结束标签;如果开始标签不在本字符块,而是在前面的某一字符块,结束标签在本字符块,则在本字符块的起始位置添加对应的开始标签。
4.根据权利要求1所述的阿拉伯语显示方法,其特征在于,所述步骤(11)中将步骤(10)得到的行字符串的列表进行拼接生成新的字符串为:将步骤(10)得到的行字符串的列表进行拼接,并且在不是最后一行的字符串尾添加换行符,生成新的字符串。
5.根据权利要求1所述的阿拉伯语显示方法,其特征在于,步骤(1)中的将需要设置到文本控件上的文本字符串进行预处理包括如下步骤:
1.1将文本字符串按照阿拉伯语和非阿拉伯语符号的规则生成字符块列表;
1.2遍历字符块列表,对阿拉伯语字符块按照阿拉伯字符的变形与连词规则进行变换,对非阿拉伯语字符块保持原形;
1.3遍历字符块列表,将所有字符块重新拼接成一个新的字符串。
6.根据权利要求5所述的阿拉伯语显示方法,其特征在于,所述步骤(2)中的将预处理后的字符串根据文本控件的宽度进行分行处理,生成行字符串的列表包括:
2.1获取文本控件中文本框空间的宽度、高度和字体大小信息;
2.2根据步骤2.1中获得的宽度信息、高度信息、字体大小信息以及步骤1.3中获得的所述新的字符串内容计算出每一行中显示的字符;
2.3计算出每行文本的字符数;
2.4生成每行的字符个数列表;
2.5将步骤1.3得到的所述新的字符串根据生成的每行的字符个数列表进行分行,生成行字符串的列表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于崔晓珂,未经崔晓珂许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910751511.X/1.html,转载请声明来源钻瓜专利网。