WebKit Bugzilla
Attachment 349240 Details for
Bug 189448
: Synthetic bold additional advances need to be applied after shaping
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
WIP
bug-189448-20180907215803.patch (text/plain), 3.04 KB, created by
Myles C. Maxfield
on 2018-09-07 21:58:04 PDT
(
hide
)
Description:
WIP
Filename:
MIME Type:
Creator:
Myles C. Maxfield
Created:
2018-09-07 21:58:04 PDT
Size:
3.04 KB
patch
obsolete
>Subversion Revision: 235819 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index e04317f91822177b8e922410d72145d4fbf94993..32262a3d2dfe82ae2bfe9523b1db83fdaa9552ee 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,17 @@ >+2018-09-07 Myles C. Maxfield <mmaxfield@apple.com> >+ >+ Osaka is totally busted >+ https://bugs.webkit.org/show_bug.cgi?id=189448 >+ <rdar://problem/40994395> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ No new tests (OOPS!). >+ >+ * platform/graphics/WidthIterator.cpp: >+ (WebCore::WidthIterator::shouldApplyFontTransforms const): >+ (WebCore::WidthIterator::applyFontTransforms): >+ > 2018-09-07 Youenn Fablet <youenn@apple.com> > > RTCRtpReceiver::track should return a MediaStreamTrack reference >diff --git a/Source/WebCore/platform/graphics/WidthIterator.cpp b/Source/WebCore/platform/graphics/WidthIterator.cpp >index 9bde879703f6a4df114996a2a8cc77e1c717fc59..d9c855ef4e451bcb16b71760ce2222b8c67a73f7 100644 >--- a/Source/WebCore/platform/graphics/WidthIterator.cpp >+++ b/Source/WebCore/platform/graphics/WidthIterator.cpp >@@ -85,23 +85,24 @@ inline auto WidthIterator::shouldApplyFontTransforms(const GlyphBuffer* glyphBuf > { > if (glyphBuffer && glyphBuffer->size() == (lastGlyphCount + 1) && isSoftBankEmoji(previousCharacter)) > return TransformsType::Forced; >- if (m_run.length() <= 1 || !(m_enableKerning || m_requiresShaping)) >+ if (/*m_run.length() <= 1 || */ !(m_enableKerning || m_requiresShaping)) > return TransformsType::None; > return TransformsType::NotForced; > } > > inline float WidthIterator::applyFontTransforms(GlyphBuffer* glyphBuffer, bool ltr, unsigned& lastGlyphCount, const Font* font, UChar32 previousCharacter, bool force, CharactersTreatedAsSpace& charactersTreatedAsSpace) > { >+ UNUSED_PARAM(force); > ASSERT_UNUSED(previousCharacter, shouldApplyFontTransforms(glyphBuffer, lastGlyphCount, previousCharacter) != WidthIterator::TransformsType::None); > >- if (!glyphBuffer) >- return 0; >+ //if (!glyphBuffer) >+ // return 0; > > unsigned glyphBufferSize = glyphBuffer->size(); >- if (!force && glyphBufferSize <= lastGlyphCount + 1) { >+ /*if (!force && glyphBufferSize <= lastGlyphCount + 1) { > lastGlyphCount = glyphBufferSize; > return 0; >- } >+ }*/ > > GlyphBufferAdvance* advances = glyphBuffer->advances(0); > float widthDifference = 0; >@@ -114,8 +115,10 @@ 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) >+ for (unsigned i = lastGlyphCount; i < glyphBufferSize; ++i) { > advances[i].setHeight(-advances[i].height()); >+ advances[i].setWidth(advances[i].width() + font->syntheticBoldOffset()); >+ } > > if (!ltr) > glyphBuffer->reverse(lastGlyphCount, glyphBufferSize - lastGlyphCount);
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
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 189448
:
349240
|
349246
|
349248
|
349249
|
349251
|
349600
|
349602
|
349630
|
349634
|
349635
|
349645
|
349646
|
349649
|
349657
|
349665
|
349681
|
349692
|
349694
|
349703
|
349705
|
349710
|
349731
|
349732
|
349734
|
349737
|
349739
|
435524
|
435525
|
435528
|
436111
|
436125
|
436127
|
436132
|
436134
|
436141
|
436150
|
436152
|
436216
|
436607