Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
sxychenjing
engine
提交
728e473f
E
engine
项目概览
sxychenjing
/
engine
与 Fork 源项目一致
从无法访问的项目Fork
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
E
engine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
728e473f
编写于
10月 28, 2019
作者:
G
Gary Qian
提交者:
GitHub
10月 28, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Pass LinearTextFlat to SkFont - iOS13 letter spacing (#13321)
上级
6f265978
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
176 addition
and
134 deletion
+176
-134
third_party/txt/src/minikin/Layout.cpp
third_party/txt/src/minikin/Layout.cpp
+2
-4
third_party/txt/src/txt/font_skia.cc
third_party/txt/src/txt/font_skia.cc
+1
-0
third_party/txt/src/txt/paragraph_txt.h
third_party/txt/src/txt/paragraph_txt.h
+1
-0
third_party/txt/src/txt/styled_runs.h
third_party/txt/src/txt/styled_runs.h
+1
-0
third_party/txt/tests/paragraph_unittests.cc
third_party/txt/tests/paragraph_unittests.cc
+171
-130
未找到文件。
third_party/txt/src/minikin/Layout.cpp
浏览文件 @
728e473f
...
...
@@ -317,10 +317,8 @@ int Layout::findFace(const FakedFont& face, LayoutContext* ctx) {
// corresponding hb_font object.
if
(
ctx
!=
NULL
)
{
hb_font_t
*
font
=
getHbFontLocked
(
face
.
font
);
// Temporarily removed to fix advance integer rounding.
// This is likely due to very old versions of harfbuzz and ICU.
// hb_font_set_funcs(font, getHbFontFuncs(isColorBitmapFont(font)),
// &ctx->paint, 0);
hb_font_set_funcs
(
font
,
getHbFontFuncs
(
isColorBitmapFont
(
font
)),
&
ctx
->
paint
,
0
);
ctx
->
hbFonts
.
push_back
(
font
);
}
return
ix
;
...
...
third_party/txt/src/txt/font_skia.cc
浏览文件 @
728e473f
...
...
@@ -52,6 +52,7 @@ static void FontSkia_SetSkiaFont(sk_sp<SkTypeface> typeface,
SkFont
*
skFont
,
const
minikin
::
MinikinPaint
&
paint
)
{
skFont
->
setTypeface
(
std
::
move
(
typeface
));
skFont
->
setLinearMetrics
((
paint
.
paintFlags
&
minikin
::
LinearTextFlag
)
!=
0
);
// TODO: set more paint parameters from Minikin
skFont
->
setSize
(
paint
.
size
);
}
...
...
third_party/txt/src/txt/paragraph_txt.h
浏览文件 @
728e473f
...
...
@@ -129,6 +129,7 @@ class ParagraphTxt : public Paragraph {
private:
friend
class
ParagraphBuilderTxt
;
FRIEND_TEST
(
ParagraphTest
,
SimpleParagraph
);
FRIEND_TEST
(
ParagraphTest
,
SimpleParagraphSmall
);
FRIEND_TEST
(
ParagraphTest
,
SimpleRedParagraph
);
FRIEND_TEST
(
ParagraphTest
,
RainbowParagraph
);
FRIEND_TEST
(
ParagraphTest
,
DefaultStyleParagraph
);
...
...
third_party/txt/src/txt/styled_runs.h
浏览文件 @
728e473f
...
...
@@ -62,6 +62,7 @@ class StyledRuns {
private:
FRIEND_TEST
(
ParagraphTest
,
SimpleParagraph
);
FRIEND_TEST
(
ParagraphTest
,
SimpleParagraphSmall
);
FRIEND_TEST
(
ParagraphTest
,
SimpleRedParagraph
);
FRIEND_TEST
(
ParagraphTest
,
RainbowParagraph
);
FRIEND_TEST
(
ParagraphTest
,
DefaultStyleParagraph
);
...
...
third_party/txt/tests/paragraph_unittests.cc
浏览文件 @
728e473f
...
...
@@ -72,6 +72,47 @@ TEST_F(ParagraphTest, SimpleParagraph) {
ASSERT_TRUE
(
Snapshot
());
}
TEST_F
(
ParagraphTest
,
SimpleParagraphSmall
)
{
const
char
*
text
=
"Hello World Text Dialog. This is a very small text in order to check "
"for constant advance additions that are only visible when the advance "
"of the glyphs are small."
;
auto
icu_text
=
icu
::
UnicodeString
::
fromUTF8
(
text
);
std
::
u16string
u16_text
(
icu_text
.
getBuffer
(),
icu_text
.
getBuffer
()
+
icu_text
.
length
());
txt
::
ParagraphStyle
paragraph_style
;
txt
::
ParagraphBuilderTxt
builder
(
paragraph_style
,
GetTestFontCollection
());
txt
::
TextStyle
text_style
;
text_style
.
font_size
=
6
;
// We must supply a font here, as the default is Arial, and we do not
// include Arial in our test fonts as it is proprietary. We want it to
// be Arial default though as it is one of the most common fonts on host
// platforms. On real devices/apps, Arial should be able to be resolved.
text_style
.
font_families
=
std
::
vector
<
std
::
string
>
(
1
,
"Roboto"
);
text_style
.
color
=
SK_ColorBLACK
;
builder
.
PushStyle
(
text_style
);
builder
.
AddText
(
u16_text
);
builder
.
Pop
();
auto
paragraph
=
BuildParagraph
(
builder
);
paragraph
->
Layout
(
GetTestCanvasWidth
());
paragraph
->
Paint
(
GetCanvas
(),
10.0
,
15.0
);
ASSERT_EQ
(
paragraph
->
text_
.
size
(),
std
::
string
{
text
}.
length
());
for
(
size_t
i
=
0
;
i
<
u16_text
.
length
();
i
++
)
{
ASSERT_EQ
(
paragraph
->
text_
[
i
],
u16_text
[
i
]);
}
ASSERT_EQ
(
paragraph
->
runs_
.
runs_
.
size
(),
1ull
);
ASSERT_EQ
(
paragraph
->
runs_
.
styles_
.
size
(),
2ull
);
ASSERT_TRUE
(
paragraph
->
runs_
.
styles_
[
1
].
equals
(
text_style
));
ASSERT_EQ
(
paragraph
->
records_
[
0
].
style
().
color
,
text_style
.
color
);
ASSERT_TRUE
(
Snapshot
());
}
// It is possible for the line_metrics_ vector in paragraph to have an empty
// line at the end as a result of the line breaking algorithm. This causes
// the final_line_count_ to be one less than line metrics. This tests that we
...
...
@@ -170,7 +211,7 @@ TEST_F(ParagraphTest, LineMetricsParagraph1) {
ASSERT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
hard_break
,
true
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
ascent
,
12.988281
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
descent
,
3.4179688
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
width
,
149.
67578
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
width
,
149.
72266
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
left
,
0.0
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
baseline
,
12.582031
);
ASSERT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
line_number
,
0ull
);
...
...
@@ -223,7 +264,7 @@ TEST_F(ParagraphTest, LineMetricsParagraph1) {
ASSERT_EQ
(
paragraph
->
GetLineMetrics
()[
1
].
hard_break
,
true
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
1
].
ascent
,
12.988281
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
1
].
descent
,
3.4179688
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
1
].
width
,
72.0
39062
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
1
].
width
,
72.0
625
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
1
].
left
,
0.0
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
1
].
baseline
,
28.582031
);
ASSERT_EQ
(
paragraph
->
GetLineMetrics
()[
1
].
line_number
,
1ull
);
...
...
@@ -313,7 +354,7 @@ TEST_F(ParagraphTest, DISABLE_ON_MAC(LineMetricsParagraph2)) {
ASSERT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
hard_break
,
false
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
ascent
,
27.84
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
descent
,
7.6799998
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
width
,
349.2
1875
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
width
,
349.2
6953
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
left
,
0.0
);
ASSERT_FLOAT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
baseline
,
28.32
);
ASSERT_EQ
(
paragraph
->
GetLineMetrics
()[
0
].
line_number
,
0ull
);
...
...
@@ -539,24 +580,24 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderParagraph)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
7ull
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
top
(),
50
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
140.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
140.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
bottom
(),
100
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
left
(),
231.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
left
(),
231.3
9062
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
top
(),
50
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
right
(),
231.3
4375
+
50
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
right
(),
231.3
9062
+
50
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
bottom
(),
100
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
left
(),
281.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
left
(),
281.3
9062
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
right
(),
281.3
4375
+
5
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
right
(),
281.3
9062
+
5
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
bottom
(),
50
);
EXPECT_FLOAT_EQ
(
boxes
[
6
].
rect
.
left
(),
336.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
6
].
rect
.
left
(),
336.3
9062
);
EXPECT_FLOAT_EQ
(
boxes
[
6
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
6
].
rect
.
right
(),
336.3
4375
+
5
);
EXPECT_FLOAT_EQ
(
boxes
[
6
].
rect
.
right
(),
336.3
9062
+
5
);
EXPECT_FLOAT_EQ
(
boxes
[
6
].
rect
.
bottom
(),
50
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -615,9 +656,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderBaselineParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the box is in the right place
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
50
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -628,9 +669,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderBaselineParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the other text didn't just shift to accomodate it.
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
75.3
24219
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
75.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
14.226246
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
44.694996
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -691,9 +732,9 @@ TEST_F(ParagraphTest,
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the box is in the right place
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
-
0.34765625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
49.652344
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -704,9 +745,9 @@ TEST_F(ParagraphTest,
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the other text didn't just shift to accomodate it.
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
75.3
24219
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
75.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
25.53125
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
56
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -767,9 +808,9 @@ TEST_F(ParagraphTest,
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the box is in the right place
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
24
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
74
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -780,9 +821,9 @@ TEST_F(ParagraphTest,
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the other text didn't just shift to accomodate it.
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
75.3
24219
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
75.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
-
0.12109375
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
30.347656
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -841,9 +882,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderBottomParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the box is in the right place
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
50
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -856,7 +897,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderBottomParagraph)) {
// Verify the other text didn't just shift to accomodate it.
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
0.5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
19.53125
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
16.
097656
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
16.
101562
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
50
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -915,9 +956,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderTopParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the box is in the right place
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
50
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -930,7 +971,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderTopParagraph)) {
// Verify the other text didn't just shift to accomodate it.
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
0.5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
16.
097656
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
16.
101562
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
30.46875
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -989,9 +1030,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderMiddleParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the box is in the right place
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
145.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
50
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -1002,9 +1043,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderMiddleParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
// Verify the other text didn't just shift to accomodate it.
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
75.3
24219
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
75.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
9.765625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
40.234375
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -1205,9 +1246,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderBreakParagraph)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
31.
695312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
31.
703125
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
218.53125
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
47.
292969
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
47.
304688
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
249
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -1223,14 +1264,14 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderBreakParagraph)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
30ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
59.7
26562
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
59.7
42188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
26.378906
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
56.847656
);
EXPECT_FLOAT_EQ
(
boxes
[
11
].
rect
.
left
(),
606.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
11
].
rect
.
left
(),
606.3
9062
);
EXPECT_FLOAT_EQ
(
boxes
[
11
].
rect
.
top
(),
38
);
EXPECT_FLOAT_EQ
(
boxes
[
11
].
rect
.
right
(),
631.3
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
11
].
rect
.
right
(),
631.3
9062
);
EXPECT_FLOAT_EQ
(
boxes
[
11
].
rect
.
bottom
(),
63
);
EXPECT_FLOAT_EQ
(
boxes
[
17
].
rect
.
left
(),
0.5
);
...
...
@@ -1337,19 +1378,19 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderGetRectsParagraph)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
34ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
21875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
90.9
45312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
140.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
140.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
50
);
EXPECT_FLOAT_EQ
(
boxes
[
16
].
rect
.
left
(),
800.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
16
].
rect
.
left
(),
800.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
16
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
16
].
rect
.
right
(),
850.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
16
].
rect
.
right
(),
850.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
16
].
rect
.
bottom
(),
50
);
EXPECT_FLOAT_EQ
(
boxes
[
33
].
rect
.
left
(),
503.
38281
);
EXPECT_FLOAT_EQ
(
boxes
[
33
].
rect
.
left
(),
503.
48438
);
EXPECT_FLOAT_EQ
(
boxes
[
33
].
rect
.
top
(),
160
);
EXPECT_FLOAT_EQ
(
boxes
[
33
].
rect
.
right
(),
508.
38281
);
EXPECT_FLOAT_EQ
(
boxes
[
33
].
rect
.
right
(),
508.
48438
);
EXPECT_FLOAT_EQ
(
boxes
[
33
].
rect
.
bottom
(),
180
);
Paragraph
::
RectHeightStyle
rect_height_style
=
...
...
@@ -1363,20 +1404,20 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(InlinePlaceholderGetRectsParagraph)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
8ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
216.
0976
6
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
216.
1015
6
);
// Top should be taller than "tight"
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
60
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
290.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
290.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
120
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
290.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
290.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
top
(),
60
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
340.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
340.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
bottom
(),
120
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
left
(),
340.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
left
(),
340.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
top
(),
60
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
right
(),
345.9
2188
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
right
(),
345.9
4531
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
bottom
(),
120
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -1745,7 +1786,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(HeightOverrideParagraph)) {
EXPECT_EQ
(
boxes
.
size
(),
3ull
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
0
);
EXPECT_NEAR
(
boxes
[
1
].
rect
.
top
(),
92.805778503417969
,
0.0001
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
43.8
4375
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
43.8
51562
);
EXPECT_NEAR
(
boxes
[
1
].
rect
.
bottom
(),
165.49578857421875
,
0.0001
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -1924,7 +1965,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(RightAlignParagraph)) {
// less than width_.
ASSERT_DOUBLE_EQ
(
paragraph
->
width_
,
available_width
);
ASSERT_TRUE
(
paragraph
->
longest_line_
<
available_width
);
ASSERT_DOUBLE_EQ
(
paragraph
->
longest_line_
,
880.
76562
5
);
ASSERT_DOUBLE_EQ
(
paragraph
->
longest_line_
,
880.
8710937
5
);
ASSERT_TRUE
(
paragraph
->
records_
[
2
].
style
().
equals
(
text_style
));
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
2
].
offset
().
y
(),
expected_y
);
...
...
@@ -2797,14 +2838,14 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(ArabicRectsParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
2ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
556.
5468
8
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
556.
4843
8
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
-
0.26855469
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
900
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
44
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
510.0
937
5
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
510.0
312
5
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
top
(),
-
0.26855469
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
55
7.0468
8
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
55
6.9843
8
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
bottom
(),
44
);
ASSERT_EQ
(
paragraph_style
.
text_align
,
...
...
@@ -2865,9 +2906,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(ArabicRectsLTRLeftAlignParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
89.4
0625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
89.4
25781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
-
0.26855469
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
121.
87891
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
121.
90625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
44
);
ASSERT_EQ
(
paragraph_style
.
text_align
,
...
...
@@ -2928,14 +2969,14 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(ArabicRectsLTRRightAlignParagraph)) {
}
EXPECT_EQ
(
boxes
.
size
(),
2ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
556.
5468
8
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
556.
4843
8
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
-
0.26855469
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
577.7
8125
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
577.7
2656
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
44
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
545.
3085
9
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
545.
2460
9
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
top
(),
-
0.26855469
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
55
7.0468
8
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
55
6.9843
8
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
bottom
(),
44
);
ASSERT_EQ
(
paragraph_style
.
text_align
,
...
...
@@ -3084,7 +3125,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(GetRectsForRangeParagraph)) {
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
56.835938
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0.40625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
177.9
7266
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
177.9
8438
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
59
);
paint
.
setColor
(
SK_ColorGREEN
);
...
...
@@ -3094,9 +3135,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(GetRectsForRangeParagraph)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
177.9
7266
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
177.9
8438
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0.40625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
507.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
507.0
3906
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
59
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -3106,9 +3147,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(GetRectsForRangeParagraph)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
4ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
211.37
5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
211.37
891
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
59.40625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
463.6
1719
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
463.6
2891
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
118
);
// TODO(garyq): The following set of vals are definitely wrong and
...
...
@@ -3125,9 +3166,9 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(GetRectsForRangeParagraph)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
450.
1875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
450.
20312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0.40625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
519.4
7266
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
519.4
9219
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
59
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -3213,7 +3254,7 @@ TEST_F(ParagraphTest, LINUX_ONLY(GetRectsForRangeTight)) {
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
264.09
375
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
264.09
766
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
74
);
paint
.
setColor
(
SK_ColorGREEN
);
...
...
@@ -3223,9 +3264,9 @@ TEST_F(ParagraphTest, LINUX_ONLY(GetRectsForRangeTight)) {
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
2ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
264.09
375
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
264.09
766
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
595.0
8594
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
595.0
9375
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
74
);
ASSERT_TRUE
(
Snapshot
());
...
...
@@ -3293,7 +3334,7 @@ TEST_F(ParagraphTest,
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
17.4
29688
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
17.4
33594
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
88.473305
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -3303,9 +3344,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
67.4
29688
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
67.4
33594
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
88.473305
);
paint
.
setColor
(
SK_ColorGREEN
);
...
...
@@ -3315,9 +3356,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
508.0
62
5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
508.0
937
5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
88.473312
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -3327,34 +3368,34 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
8ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
88.473312
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
525.
6875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
525.
72266
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
168.47331
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
525.
6875
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
525.
72266
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
top
(),
88.473312
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
bottom
(),
168.4733
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
top
(),
168.4733
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
right
(),
531.
57422
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
right
(),
531.
60547
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
bottom
(),
248.47331
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
left
(),
531.
57422
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
left
(),
531.
60547
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
top
(),
168.4733
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
bottom
(),
248.47331
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
top
(),
248.47331
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
bottom
(),
328.4733
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
top
(),
328.47333
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
bottom
(),
408.4733
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -3364,9 +3405,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
463.7
2656
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
463.7
5781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
530.2
3047
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
530.2
6172
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
88.473305
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -3442,7 +3483,7 @@ TEST_F(ParagraphTest,
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
17.4
29688
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
17.4
33594
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
80
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -3452,9 +3493,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
67.4
29688
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
67.4
33594
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
80
);
paint
.
setColor
(
SK_ColorGREEN
);
...
...
@@ -3464,9 +3505,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
508.0
62
5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
508.0
937
5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
80
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -3476,34 +3517,34 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
8ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
80
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
525.
6875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
525.
72266
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
160
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
525.
6875
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
525.
72266
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
top
(),
80
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
bottom
(),
160
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
top
(),
160
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
right
(),
531.
57422
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
right
(),
531.
60547
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
bottom
(),
240
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
left
(),
531.
57422
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
left
(),
531.
60547
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
top
(),
160
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
bottom
(),
240
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
top
(),
240
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
bottom
(),
320
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
top
(),
320
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
bottom
(),
400
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -3513,9 +3554,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
463.7
2656
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
463.7
5781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
530.2
3047
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
530.2
6172
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
80
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -3591,7 +3632,7 @@ TEST_F(ParagraphTest,
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
17.4
29688
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
17.4
33594
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
96.946609
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -3601,9 +3642,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
67.4
29688
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
67.4
33594
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
96.946609
);
paint
.
setColor
(
SK_ColorGREEN
);
...
...
@@ -3613,9 +3654,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
508.0
62
5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
508.0
937
5
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
96.946609
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -3625,34 +3666,34 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
8ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
0781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
190.0
1953
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
96.946617
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
525.
6875
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
525.
72266
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
176.94661
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
525.
6875
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
left
(),
525.
72266
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
top
(),
96.946617
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
1
].
rect
.
bottom
(),
176.94661
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
top
(),
176.94661
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
right
(),
531.
57422
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
right
(),
531.
60547
);
EXPECT_FLOAT_EQ
(
boxes
[
2
].
rect
.
bottom
(),
256.94662
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
left
(),
531.
57422
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
left
(),
531.
60547
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
top
(),
176.94661
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
3
].
rect
.
bottom
(),
256.94662
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
top
(),
256.94662
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
4
].
rect
.
bottom
(),
336.94662
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
top
(),
336.94662
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
right
(),
570.0
2344
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
right
(),
570.0
5859
);
EXPECT_FLOAT_EQ
(
boxes
[
5
].
rect
.
bottom
(),
416.94662
);
paint
.
setColor
(
SK_ColorBLUE
);
...
...
@@ -3662,9 +3703,9 @@ TEST_F(ParagraphTest,
GetCanvas
()
->
drawRect
(
boxes
[
i
].
rect
,
paint
);
}
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
463.7
2656
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
463.7
5781
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
16.946615
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
530.2
3047
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
530.2
6172
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
96.946609
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -3857,7 +3898,7 @@ TEST_F(ParagraphTest, DISABLE_ON_WINDOWS(GetRectsForRangeCenterParagraph)) {
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
346.04492
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0.40625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
358.49
414
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
358.49
805
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
59
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -4042,7 +4083,7 @@ TEST_F(ParagraphTest,
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
346.04492
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
0.40625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
358.49
414
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
358.49
805
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
59
);
paint
.
setColor
(
SK_ColorBLACK
);
...
...
@@ -4066,7 +4107,7 @@ TEST_F(ParagraphTest,
EXPECT_EQ
(
boxes
.
size
(),
1ull
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
left
(),
331.83594
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
top
(),
59.40625
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
419.1
8359
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
right
(),
419.1
9531
);
EXPECT_FLOAT_EQ
(
boxes
[
0
].
rect
.
bottom
(),
118
);
paint
.
setColor
(
SK_ColorRED
);
...
...
@@ -4131,7 +4172,7 @@ TEST_F(ParagraphTest, LINUX_ONLY(GetRectsForRangeStrut)) {
EXPECT_FLOAT_EQ
(
strut_rect
.
left
(),
0
);
EXPECT_FLOAT_EQ
(
strut_rect
.
top
(),
10.611719
);
EXPECT_FLOAT_EQ
(
strut_rect
.
right
(),
118.6
0547
);
EXPECT_FLOAT_EQ
(
strut_rect
.
right
(),
118.6
1719
);
EXPECT_FLOAT_EQ
(
strut_rect
.
bottom
(),
27.017969
);
ASSERT_TRUE
(
tight_rect
.
contains
(
strut_rect
));
...
...
@@ -4457,9 +4498,9 @@ TEST_F(ParagraphTest, KernScaleParagraph) {
EXPECT_DOUBLE_EQ
(
paragraph
->
records_
[
0
].
offset
().
x
(),
0
);
EXPECT_DOUBLE_EQ
(
paragraph
->
records_
[
1
].
offset
().
x
(),
0
);
EXPECT_DOUBLE_EQ
(
paragraph
->
records_
[
2
].
offset
().
x
(),
207.3
632812
5
f
);
EXPECT_DOUBLE_EQ
(
paragraph
->
records_
[
3
].
offset
().
x
(),
230.8
632812
5
f
);
EXPECT_DOUBLE_EQ
(
paragraph
->
records_
[
4
].
offset
().
x
(),
253.3
554687
5
f
);
EXPECT_DOUBLE_EQ
(
paragraph
->
records_
[
2
].
offset
().
x
(),
207.3
5937
5
f
);
EXPECT_DOUBLE_EQ
(
paragraph
->
records_
[
3
].
offset
().
x
(),
230.8
5937
5
f
);
EXPECT_DOUBLE_EQ
(
paragraph
->
records_
[
4
].
offset
().
x
(),
253.3
476562
5
f
);
}
TEST_F
(
ParagraphTest
,
DISABLE_ON_WINDOWS
(
NewlineParagraph
))
{
...
...
@@ -5112,10 +5153,10 @@ TEST_F(ParagraphTest, FontFallbackParagraph) {
ASSERT_TRUE
(
Snapshot
());
ASSERT_EQ
(
paragraph
->
records_
.
size
(),
5ull
);
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
0
].
GetRunWidth
(),
64.
199218
75
);
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
1
].
GetRunWidth
(),
139.1
17187
5
);
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
0
].
GetRunWidth
(),
64.
21093
75
);
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
1
].
GetRunWidth
(),
139.1
32812
5
);
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
2
].
GetRunWidth
(),
28
);
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
3
].
GetRunWidth
(),
62.2
460937
5
);
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
3
].
GetRunWidth
(),
62.25
);
ASSERT_DOUBLE_EQ
(
paragraph
->
records_
[
4
].
GetRunWidth
(),
28
);
// When a different font is resolved, then the metrics are different.
ASSERT_TRUE
(
paragraph
->
records_
[
2
].
metrics
().
fTop
-
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录