Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Graphic Ui
提交
24eeb0e9
G
Graphic Ui
项目概览
OpenHarmony
/
Graphic Ui
大约 1 年 前同步成功
通知
13
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
Graphic Ui
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
24eeb0e9
编写于
9月 02, 2022
作者:
O
openharmony_ci
提交者:
Gitee
9月 02, 2022
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
回退 'Pull Request !738 : ICU升级69.1'
上级
9ba691c8
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
7 addition
and
8 deletion
+7
-8
frameworks/font/ui_line_break.cpp
frameworks/font/ui_line_break.cpp
+7
-8
未找到文件。
frameworks/font/ui_line_break.cpp
浏览文件 @
24eeb0e9
...
...
@@ -20,7 +20,6 @@
#include "font/ui_line_break.h"
#include "rbbidata.h"
#include "ucmndata.h"
#include "utrie2.h"
using
namespace
U_ICU_NAMESPACE
;
namespace
OHOS
{
...
...
@@ -56,8 +55,8 @@ uint16_t UILineBreakEngine::GetNextBreakPos(UILineBreakProxy& record)
}
int32_t
state
=
LINE_BREAK_STATE_START
;
const
RBBIStateTable
*
rbbStateTable
=
reinterpret_cast
<
const
RBBIStateTable
*>
(
stateTbl_
);
const
RBBIStateTableRow
16
*
row
=
reinterpret_cast
<
const
RBBIStateTableRow
16
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
const
RBBIStateTableRow
*
row
=
reinterpret_cast
<
const
RBBIStateTableRow
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
UTrie2
*
trie2
=
reinterpret_cast
<
UTrie2
*>
(
lineBreakTrie_
);
for
(
uint16_t
index
=
0
;
index
<
record
.
GetStrLen
();
++
index
)
{
uint16_t
category
=
UTRIE2_GET16
(
trie2
,
static_cast
<
uint32_t
>
(
str
[
index
]));
...
...
@@ -67,7 +66,7 @@ uint16_t UILineBreakEngine::GetNextBreakPos(UILineBreakProxy& record)
category
&=
~
0x4000
;
}
state
=
row
->
fNextState
[
category
];
row
=
reinterpret_cast
<
const
RBBIStateTableRow
16
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
row
=
reinterpret_cast
<
const
RBBIStateTableRow
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
int16_t
completedRule
=
row
->
fAccepting
;
if
((
completedRule
>
0
)
||
(
state
==
LINE_BREAK_STATE_STOP
))
{
return
index
;
...
...
@@ -196,8 +195,8 @@ bool UILineBreakEngine::IsBreakPos(uint32_t unicode, uint8_t fontId, uint8_t fon
return
true
;
}
const
RBBIStateTable
*
rbbStateTable
=
reinterpret_cast
<
const
RBBIStateTable
*>
(
stateTbl_
);
const
RBBIStateTableRow
16
*
row
=
reinterpret_cast
<
const
RBBIStateTableRow
16
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
const
RBBIStateTableRow
*
row
=
reinterpret_cast
<
const
RBBIStateTableRow
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
uint16_t
utf16
=
0
;
if
(
unicode
<=
TypedText
::
MAX_UINT16_LOW_SCOPE
)
{
utf16
=
(
unicode
&
TypedText
::
MAX_UINT16_LOW_SCOPE
);
...
...
@@ -210,7 +209,7 @@ bool UILineBreakEngine::IsBreakPos(uint32_t unicode, uint8_t fontId, uint8_t fon
category
&=
~
0x4000
;
}
state
=
row
->
fNextState
[
category
];
row
=
reinterpret_cast
<
const
RBBIStateTableRow
16
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
row
=
reinterpret_cast
<
const
RBBIStateTableRow
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
utf16
=
static_cast
<
uint16_t
>
(
TypedText
::
UTF16_HIGH_PARAM1
+
(
unicode
>>
TypedText
::
UTF16_HIGH_SHIFT
)
-
TypedText
::
UTF16_HIGH_PARAM2
);
// high
}
...
...
@@ -221,7 +220,7 @@ bool UILineBreakEngine::IsBreakPos(uint32_t unicode, uint8_t fontId, uint8_t fon
category
&=
~
0x4000
;
}
state
=
row
->
fNextState
[
category
];
row
=
reinterpret_cast
<
const
RBBIStateTableRow
16
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
row
=
reinterpret_cast
<
const
RBBIStateTableRow
*>
(
rbbStateTable
->
fTableData
+
rbbStateTable
->
fRowLen
*
state
);
return
(
row
->
fAccepting
>
0
||
state
==
LINE_BREAK_STATE_STOP
);
}
}
// namespace OHOS
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录