Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Harfbuzz
提交
50067e28
T
Third Party Harfbuzz
项目概览
OpenHarmony
/
Third Party Harfbuzz
接近 2 年 前同步成功
通知
1
Star
18
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
Third Party Harfbuzz
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
50067e28
编写于
4月 11, 2013
作者:
B
Behdad Esfahbod
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[util] Add --num-iterations
Useful for profiling shapers.
上级
08677c25
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
12 addition
and
6 deletion
+12
-6
util/options.cc
util/options.cc
+1
-0
util/options.hh
util/options.hh
+2
-0
util/shape-consumer.hh
util/shape-consumer.hh
+9
-6
未找到文件。
util/options.cc
浏览文件 @
50067e28
...
@@ -276,6 +276,7 @@ shape_options_t::add_options (option_parser_t *parser)
...
@@ -276,6 +276,7 @@ shape_options_t::add_options (option_parser_t *parser)
{
"preserve-default-ignorables"
,
0
,
0
,
G_OPTION_ARG_NONE
,
&
this
->
preserve_default_ignorables
,
"Preserve Default-Ignorable characters"
,
NULL
},
{
"preserve-default-ignorables"
,
0
,
0
,
G_OPTION_ARG_NONE
,
&
this
->
preserve_default_ignorables
,
"Preserve Default-Ignorable characters"
,
NULL
},
{
"utf8-clusters"
,
0
,
0
,
G_OPTION_ARG_NONE
,
&
this
->
utf8_clusters
,
"Use UTF8 byte indices, not char indices"
,
NULL
},
{
"utf8-clusters"
,
0
,
0
,
G_OPTION_ARG_NONE
,
&
this
->
utf8_clusters
,
"Use UTF8 byte indices, not char indices"
,
NULL
},
{
"normalize-glyphs"
,
0
,
0
,
G_OPTION_ARG_NONE
,
&
this
->
normalize_glyphs
,
"Rearrange glyph clusters in nominal order"
,
NULL
},
{
"normalize-glyphs"
,
0
,
0
,
G_OPTION_ARG_NONE
,
&
this
->
normalize_glyphs
,
"Rearrange glyph clusters in nominal order"
,
NULL
},
{
"num-iterations"
,
0
,
0
,
G_OPTION_ARG_INT
,
&
this
->
num_iterations
,
"Run shaper N times (default: 1)"
,
"N"
},
{
NULL
}
{
NULL
}
};
};
parser
->
add_group
(
entries
,
parser
->
add_group
(
entries
,
...
...
util/options.hh
浏览文件 @
50067e28
...
@@ -150,6 +150,7 @@ struct shape_options_t : option_group_t
...
@@ -150,6 +150,7 @@ struct shape_options_t : option_group_t
shapers
=
NULL
;
shapers
=
NULL
;
utf8_clusters
=
false
;
utf8_clusters
=
false
;
normalize_glyphs
=
false
;
normalize_glyphs
=
false
;
num_iterations
=
1
;
add_options
(
parser
);
add_options
(
parser
);
}
}
...
@@ -234,6 +235,7 @@ struct shape_options_t : option_group_t
...
@@ -234,6 +235,7 @@ struct shape_options_t : option_group_t
char
**
shapers
;
char
**
shapers
;
hb_bool_t
utf8_clusters
;
hb_bool_t
utf8_clusters
;
hb_bool_t
normalize_glyphs
;
hb_bool_t
normalize_glyphs
;
unsigned
int
num_iterations
;
};
};
...
...
util/shape-consumer.hh
浏览文件 @
50067e28
...
@@ -51,14 +51,17 @@ struct shape_consumer_t
...
@@ -51,14 +51,17 @@ struct shape_consumer_t
{
{
output
.
new_line
();
output
.
new_line
();
shaper
.
populate_buffer
(
buffer
,
text
,
text_len
,
text_before
,
text_after
);
output
.
consume_text
(
buffer
,
text
,
text_len
,
shaper
.
utf8_clusters
);
output
.
consume_text
(
buffer
,
text
,
text_len
,
shaper
.
utf8_clusters
);
if
(
!
shaper
.
shape
(
font
,
buffer
))
{
for
(
unsigned
int
n
=
shaper
.
num_iterations
;
n
;
n
--
)
failed
=
true
;
{
hb_buffer_set_length
(
buffer
,
0
);
shaper
.
populate_buffer
(
buffer
,
text
,
text_len
,
text_before
,
text_after
);
output
.
shape_failed
(
buffer
,
text
,
text_len
,
shaper
.
utf8_clusters
);
if
(
!
shaper
.
shape
(
font
,
buffer
))
{
return
;
failed
=
true
;
hb_buffer_set_length
(
buffer
,
0
);
output
.
shape_failed
(
buffer
,
text
,
text_len
,
shaper
.
utf8_clusters
);
return
;
}
}
}
output
.
consume_glyphs
(
buffer
,
text
,
text_len
,
shaper
.
utf8_clusters
);
output
.
consume_glyphs
(
buffer
,
text
,
text_len
,
shaper
.
utf8_clusters
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录