[发明专利]在嵌入式网络话机上实现的双向文本混排显示方法及装置有效
申请号: | 201911405601.X | 申请日: | 2019-12-30 |
公开(公告)号: | CN111178001B | 公开(公告)日: | 2023-08-29 |
发明(设计)人: | 丁百勇 | 申请(专利权)人: | 南京汉隆科技有限公司 |
主分类号: | G06F40/106 | 分类号: | G06F40/106;G06F40/126;G06F40/166 |
代理公司: | 南京众联专利代理有限公司 32206 | 代理人: | 叶涓涓 |
地址: | 210012 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 嵌入式 网络 话机 实现 双向 文本 显示 方法 装置 | ||
1.在嵌入式网络话机上实现的双向文本混排显示方法,其特征在于,包括如下步骤:
步骤1,对原始字符串进行二次遍历得到方向码,方向码用于表示字符方向为R方向或是L方向,其中R表示由右到左,L表示由左到右;第一次遍历对所有字符进行方向初步判断,对于强方向类型的字符确定方向为R或L,对于其他字符暂定与基本方向相同;第二次遍历根据规则调整某些暂定方向的字符的方向;
字符划分为以下几类:E-LTR字符,N-数字,F-符号,f-成对符号,B-空格,X-RTL字符;
步骤1具体包括如下子步骤:
使用一个字节记录一个字符的信息,存储信息为ttttttde,其中t表示类型,d表示方向,其中,0-LTR,1-RTL,e表示此字符方向是否已确定,其中0-未确定,1-已确定;默认初始值全为0;字节序列与原字符串的字符序列一一对应,字节形成方向码;
对字符串中的字符进行第一次遍历:
对于E、N类型,d=0,e=1;对于X类型,d=1,e=1;在基本方向为RTL时,对于F、B类型,d=1;对于f类型,d=1,e=1;在基本方向为LTR时,对于f类型,d=0;其他未设定的bit即为初始值;
对字符串中的字符进行第二次遍历:
对方向未确定的字符,逐一进行如下判断:看字符的两边是否有强方向类型字符,若没有,则本字符方向保持不变;若字符的两侧字符方向一致,则本字符d改成与它们一致;若起始方向侧有数字且基本方向为RTL,则d=1;将字符串中各字符对应的方向码中的e均设置为1;
二次遍历完成后,方向码生成;
步骤2,根据生成的方向码,对原始字符串进行字符重排,凡是R方向的,R方向段内字符进行倒序排列,若基本方向是LTR,则此重排字符串为最终字符串;若基本方向是RTL,则各个方向段还进行段间倒序排列,最终生成重排字符串;
步骤3,按照重排字符串顺序写出字符。
2.根据权利要求1所述的在嵌入式网络话机上实现的双向文本混排显示方法,其特征在于,所述步骤1之前先对仅包含单一字符类型的文本进行预处理操作:
判断基本方向为LTR方向时,查找字符串中是否有RTL字符,若没有即执行步骤3写出字符;
判断基本方向为RTL时,判断当字符串中仅包含RTL字符时,将整个字符串直接设定为R方向,随后执行步骤2、3;判断当字符串中不包含RTL字符时,整个字符串直接设定为L方向,随后执行步骤3。
3.根据权利要求1所述的在嵌入式网络话机上实现的双向文本混排显示方法,其特征在于,所述基本方向预先设定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京汉隆科技有限公司,未经南京汉隆科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911405601.X/1.html,转载请声明来源钻瓜专利网。