Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Third Party Harfbuzz
提交
49c5ec51
T
Third Party Harfbuzz
项目概览
OpenHarmony
/
Third Party Harfbuzz
1 年多 前同步成功
通知
0
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看板
提交
49c5ec51
编写于
7月 23, 2012
作者:
B
Behdad Esfahbod
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Minor refactoring
上级
c3e6fdc3
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
36 addition
and
33 deletion
+36
-33
src/hb-ot-layout-gsubgpos-private.hh
src/hb-ot-layout-gsubgpos-private.hh
+0
-32
src/hb-ot-layout-private.hh
src/hb-ot-layout-private.hh
+35
-0
src/hb-ot-shape-complex-indic.cc
src/hb-ot-shape-complex-indic.cc
+1
-1
未找到文件。
src/hb-ot-layout-gsubgpos-private.hh
浏览文件 @
49c5ec51
...
...
@@ -34,38 +34,6 @@
/* unique ligature id */
/* component number in the ligature (0 = base) */
static
inline
void
set_lig_props
(
hb_glyph_info_t
&
info
,
unsigned
int
lig_id
,
unsigned
int
lig_comp
)
{
info
.
lig_props
()
=
(
lig_id
<<
4
)
|
(
lig_comp
&
0x0F
);
}
static
inline
unsigned
int
get_lig_id
(
const
hb_glyph_info_t
&
info
)
{
return
info
.
lig_props
()
>>
4
;
}
static
inline
unsigned
int
get_lig_comp
(
const
hb_glyph_info_t
&
info
)
{
return
info
.
lig_props
()
&
0x0F
;
}
static
inline
bool
is_a_ligature
(
const
hb_glyph_info_t
&
info
)
{
return
unlikely
(
get_lig_id
(
info
)
&&
~
get_lig_comp
(
info
));
}
static
inline
uint8_t
allocate_lig_id
(
hb_buffer_t
*
buffer
)
{
uint8_t
lig_id
=
buffer
->
next_serial
()
&
0x0F
;
if
(
unlikely
(
!
lig_id
))
lig_id
=
allocate_lig_id
(
buffer
);
/* in case of overflow */
return
lig_id
;
}
#ifndef HB_DEBUG_CLOSURE
#define HB_DEBUG_CLOSURE (HB_DEBUG+0)
#endif
...
...
src/hb-ot-layout-private.hh
浏览文件 @
49c5ec51
...
...
@@ -64,6 +64,41 @@ _hb_ot_layout_skip_mark (hb_face_t *face,
unsigned
int
*
property_out
);
/*
* GSUB/GPOS
*/
/* unique ligature id */
/* component number in the ligature (0 = base) */
static
inline
void
set_lig_props
(
hb_glyph_info_t
&
info
,
unsigned
int
lig_id
,
unsigned
int
lig_comp
)
{
info
.
lig_props
()
=
(
lig_id
<<
4
)
|
(
lig_comp
&
0x0F
);
}
static
inline
unsigned
int
get_lig_id
(
const
hb_glyph_info_t
&
info
)
{
return
info
.
lig_props
()
>>
4
;
}
static
inline
unsigned
int
get_lig_comp
(
const
hb_glyph_info_t
&
info
)
{
return
info
.
lig_props
()
&
0x0F
;
}
static
inline
bool
is_a_ligature
(
const
hb_glyph_info_t
&
info
)
{
return
unlikely
(
get_lig_id
(
info
)
&&
~
get_lig_comp
(
info
));
}
static
inline
uint8_t
allocate_lig_id
(
hb_buffer_t
*
buffer
)
{
uint8_t
lig_id
=
buffer
->
next_serial
()
&
0x0F
;
if
(
unlikely
(
!
lig_id
))
lig_id
=
allocate_lig_id
(
buffer
);
/* in case of overflow */
return
lig_id
;
}
/*
* hb_ot_layout_t
...
...
src/hb-ot-shape-complex-indic.cc
浏览文件 @
49c5ec51
...
...
@@ -26,7 +26,7 @@
#include "hb-ot-shape-complex-indic-private.hh"
#include "hb-ot-shape-private.hh"
#include "hb-ot-layout-
gsubgpos-
private.hh"
#include "hb-ot-layout-private.hh"
#define OLD_INDIC_TAG(script) (((hb_tag_t) script) | 0x20000000)
#define IS_OLD_INDIC_TAG(tag) ( \
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录