WebKit Bugzilla
Attachment 339475 Details for
Bug 185062
: Text shaping in the simple path is flipped in the y direction
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-185062-20180503151007.patch (text/plain), 19.21 KB, created by
Myles C. Maxfield
on 2018-05-03 15:10:08 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Myles C. Maxfield
Created:
2018-05-03 15:10:08 PDT
Size:
19.21 KB
patch
obsolete
>Subversion Revision: 231324 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 277a314ecb0fd7a369d5e0a30fc1b8c05c74d11e..16eb0861021f1765feb9161834852a8c184345a2 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,23 @@ >+2018-05-03 Myles C. Maxfield <mmaxfield@apple.com> >+ >+ Text shaping in the simple path is flipped in the y direction >+ https://bugs.webkit.org/show_bug.cgi?id=185062 >+ <rdar://problem/39778678> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Shaping in our simple codepath occurs in an "increasing-y-goes-up" coordinate system, but our painting >+ code uses an "increasing-y-goes-down" coordinate system. We weren't fixing up the coordinate systems >+ because we never noticed. This is because the simple codepath is only designed for kerning and ligatures, >+ neither of which move glyphs vertically in the common case. >+ >+ Test: fast/text/vertical-displacement-simple-codepath.html >+ >+ * platform/graphics/Font.cpp: >+ (WebCore::Font::applyTransforms const): >+ * platform/graphics/WidthIterator.cpp: >+ (WebCore::WidthIterator::applyFontTransforms): >+ > 2018-05-03 Chris Dumez <cdumez@apple.com> > > REGRESSION(iOS 11.3): Crashes in TimerBase::~TimerBase() in Tencent x5gamehelper >diff --git a/Source/WebCore/platform/graphics/Font.cpp b/Source/WebCore/platform/graphics/Font.cpp >index 30e5f3c09248440ae3ecd419ed3f555855ff8ed1..2e2ad390dcc9c014b41427fe0561eb2aa1730da4 100644 >--- a/Source/WebCore/platform/graphics/Font.cpp >+++ b/Source/WebCore/platform/graphics/Font.cpp >@@ -368,7 +368,6 @@ RefPtr<Font> Font::createScaledFont(const FontDescription& fontDescription, floa > > bool Font::applyTransforms(GlyphBufferGlyph* glyphs, GlyphBufferAdvance* advances, size_t glyphCount, bool enableKerning, bool requiresShaping) const > { >- // We need to handle transforms on SVG fonts internally, since they are rendered internally. > #if PLATFORM(COCOA) > CTFontTransformOptions options = (enableKerning ? kCTFontTransformApplyPositioning : 0) | (requiresShaping ? kCTFontTransformApplyShaping : 0); > return CTFontTransformGlyphs(m_platformData.ctFont(), glyphs, reinterpret_cast<CGSize*>(advances), glyphCount, options); >diff --git a/Source/WebCore/platform/graphics/WidthIterator.cpp b/Source/WebCore/platform/graphics/WidthIterator.cpp >index 688978a369be79413bf4aa8972a7366e489cf2d3..5a8da01f47d7cb1715668bc8be6bb5247315c235 100644 >--- a/Source/WebCore/platform/graphics/WidthIterator.cpp >+++ b/Source/WebCore/platform/graphics/WidthIterator.cpp >@@ -114,6 +114,9 @@ inline float WidthIterator::applyFontTransforms(GlyphBuffer* glyphBuffer, bool l > > font->applyTransforms(glyphBuffer->glyphs(lastGlyphCount), advances + lastGlyphCount, glyphBufferSize - lastGlyphCount, m_enableKerning, m_requiresShaping); > >+ for (unsigned i = lastGlyphCount; i < glyphBufferSize; ++i) >+ advances[i].setHeight(advances[i].height() * -1); >+ > if (!ltr) > glyphBuffer->reverse(lastGlyphCount, glyphBufferSize - lastGlyphCount); > >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 7b8c63ae0abce08dc00b4885eb5157c4e04db8d8..2f1ea3b061fe207165f2c22dae662b3f62e43545 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,15 @@ >+2018-05-03 Myles C. Maxfield <mmaxfield@apple.com> >+ >+ Text shaping in the simple path is flipped in the y direction >+ https://bugs.webkit.org/show_bug.cgi?id=185062 >+ <rdar://problem/39778678> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ Huge thanks to Ulrike Rausch of LiebeFonts for contributing the test fonts!!! >+ >+ * Scripts/webkitpy/common/config/contributors.json: >+ > 2018-05-03 Valerie R Young <valerie@bocoup.com> > > test262/Runner.pm: minor fixes >diff --git a/Tools/Scripts/webkitpy/common/config/contributors.json b/Tools/Scripts/webkitpy/common/config/contributors.json >index 53e495d89080c1901857bc2549a6ed2808f81e70..c921ae8f2957ea65ab0d68ef0afed3a63f34f8ad 100644 >--- a/Tools/Scripts/webkitpy/common/config/contributors.json >+++ b/Tools/Scripts/webkitpy/common/config/contributors.json >@@ -5547,6 +5547,11 @@ > ], > "status" : "committer" > }, >+ "Ulrike Rausch" : { >+ "emails" : [ >+ "" >+ ] >+ }, > "Vangelis Kokkevis" : { > "emails" : [ > "vangelis@chromium.org" >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index ad2a3777701f55ccae879e37ac0cde70f3646245..8a5868faae9e849578de58a23ef07ed5c329016e 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,26 @@ >+2018-05-03 Myles C. Maxfield <mmaxfield@apple.com> >+ >+ Text shaping in the simple path is flipped in the y direction >+ https://bugs.webkit.org/show_bug.cgi?id=185062 >+ <rdar://problem/39778678> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ This test renders a font which uses our fast text codepath but also includes vertical >+ displacements inside its liga feature. The test makes sure that the vertical displacement >+ occurs in the correct direction. >+ >+ The test fonts were created by Ulrike Rausch of LiebeFonts specifically for the purpose >+ of testing. Huge thanks to her!! Figuring out this bug would not have been possible if >+ not for her huge help! >+ >+ * fast/text/resources/LiebeTest-calt.woff: Added. >+ * fast/text/resources/LiebeTest-dlig.woff: Added. >+ * fast/text/resources/LiebeTest-liga.woff: Added. >+ * fast/text/resources/LiebeTest-swsh.woff: Added. >+ * fast/text/vertical-displacement-simple-codepath-expected.html: Added. >+ * fast/text/vertical-displacement-simple-codepath.html: Added. >+ > 2018-05-03 Ryan Haddad <ryanhaddad@apple.com> > > Mark media/controls/pip-placeholder-without-video-controls.html as flaky. >diff --git a/LayoutTests/fast/text/resources/LiebeTest-calt.woff b/LayoutTests/fast/text/resources/LiebeTest-calt.woff >new file mode 100644 >index 0000000000000000000000000000000000000000..853af0c2d2c3517124a1046227afaef14c5f6e33 >GIT binary patch >literal 2056 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 >E1H4k0{Qv*} > >literal 0 >HcmV?d00001 > >diff --git a/LayoutTests/fast/text/resources/LiebeTest-dlig.woff b/LayoutTests/fast/text/resources/LiebeTest-dlig.woff >new file mode 100644 >index 0000000000000000000000000000000000000000..84be1983abfd0ec519a794fe09400acf7479640f >GIT binary patch >literal 2056 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 >Bo6-OP > >literal 0 >HcmV?d00001 > >diff --git a/LayoutTests/fast/text/resources/LiebeTest-liga.woff b/LayoutTests/fast/text/resources/LiebeTest-liga.woff >new file mode 100644 >index 0000000000000000000000000000000000000000..772784b965e220f93dc55b2130919d637f090b95 >GIT binary patch >literal 2056 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 >BnY;i1 > >literal 0 >HcmV?d00001 > >diff --git a/LayoutTests/fast/text/resources/LiebeTest-swsh.woff b/LayoutTests/fast/text/resources/LiebeTest-swsh.woff >new file mode 100644 >index 0000000000000000000000000000000000000000..a0d2a4f42d1213accd192ff5534ca9ef787ee0f1 >GIT binary patch >literal 2056 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 >F`Y$zpm6!kk > >literal 0 >HcmV?d00001 > >diff --git a/LayoutTests/fast/text/vertical-displacement-simple-codepath-expected.html b/LayoutTests/fast/text/vertical-displacement-simple-codepath-expected.html >new file mode 100644 >index 0000000000000000000000000000000000000000..f98e373697796b5095f985b3b263c491bf2078a4 >--- /dev/null >+++ b/LayoutTests/fast/text/vertical-displacement-simple-codepath-expected.html >@@ -0,0 +1,8 @@ >+<!DOCTYPE html> >+<html> >+<head> >+</head> >+<body> >+This test makes sure that vertical displacements in our fast text codepath are using the correct coordinate system. The test passes if this text you are reading right now is the only thing on the page. >+</body> >+</html> >diff --git a/LayoutTests/fast/text/vertical-displacement-simple-codepath.html b/LayoutTests/fast/text/vertical-displacement-simple-codepath.html >new file mode 100644 >index 0000000000000000000000000000000000000000..78286159ada630eb5160005b76d12d9af43ce8dd >--- /dev/null >+++ b/LayoutTests/fast/text/vertical-displacement-simple-codepath.html >@@ -0,0 +1,30 @@ >+<!DOCTYPE html> >+<html> >+<head> >+<style> >+@font-face { >+ font-family: "LiebeTest-calt"; >+ src: url("resources/LiebeTest-calt.woff") format("woff"); >+} >+@font-face { >+ font-family: "LiebeTest-dlig"; >+ src: url("resources/LiebeTest-dlig.woff") format("woff"); >+} >+@font-face { >+ font-family: "LiebeTest-liga"; >+ src: url("resources/LiebeTest-liga.woff") format("woff"); >+} >+@font-face { >+ font-family: "LiebeTest-swsh"; >+ src: url("resources/LiebeTest-swsh.woff") format("woff"); >+} >+</style> >+</head> >+<body> >+This test makes sure that vertical displacements in our fast text codepath are using the correct coordinate system. The test passes if this text you are reading right now is the only thing on the page. >+<div style="position: relative;"> >+<span style="font: 100px 'LiebeTest-calt';">cba</span><span style="font: 100px 'LiebeTest-dlig'; font-feature-settings: 'dlig';">cba</span><span style="font: 100px 'LiebeTest-liga';">cba</span><span style="font: 100px 'LiebeTest-swsh'; font-feature-settings: 'swsh';">cba</span> >+<div style="position: absolute; top: 0px; left: 0px; width: 100%; height: 102px; background: white;"></div> >+</div> >+</body> >+</html>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
simon.fraser
:
review+
ews-watchlist
:
commit-queue-
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 185062
:
338948
|
339433
|
339439
|
339441
|
339445
|
339458
| 339475 |
339524