Bug 117726 - Synthesized vertical italics on rotated glyphs are transformed incorrectly
Summary: Synthesized vertical italics on rotated glyphs are transformed incorrectly
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Text (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Dean Jackson
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-06-17 22:38 PDT by Dean Jackson
Modified: 2013-06-18 18:29 PDT (History)
1 user (show)

See Also:


Attachments
Test Case (321 bytes, text/html)
2013-06-17 22:38 PDT, Dean Jackson
no flags Details
Patch (12.98 KB, patch)
2013-06-17 22:49 PDT, Dean Jackson
no flags Details | Formatted Diff | Diff
Patch (33.29 KB, patch)
2013-06-18 12:40 PDT, Dean Jackson
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Dean Jackson 2013-06-17 22:38:07 PDT
Created attachment 204882 [details]
Test Case

See the testcase. If a document is using vertical layout, and italics, and using a font that does not provide italic glyphs, then the synthesis of italics skews in the wrong direction.

<rdar://problem/12783606>
Comment 1 Dean Jackson 2013-06-17 22:49:31 PDT
Created attachment 204883 [details]
Patch
Comment 2 Early Warning System Bot 2013-06-17 22:57:36 PDT
Comment on attachment 204883 [details]
Patch

Attachment 204883 [details] did not pass qt-ews (qt):
Output: http://webkit-queues.appspot.com/results/937247
Comment 3 Early Warning System Bot 2013-06-17 22:59:23 PDT
Comment on attachment 204883 [details]
Patch

Attachment 204883 [details] did not pass qt-wk2-ews (qt-wk2):
Output: http://webkit-queues.appspot.com/results/884197
Comment 4 Eric Carlson 2013-06-18 07:52:42 PDT
Comment on attachment 204883 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=204883&action=review

> Source/WebCore/platform/graphics/FontGlyphs.cpp:207
> +    RefPtr<SimpleFontData> nonItalicFontData = data.fontData->nonSyntheticItalicFontData();
> +    GlyphPageTreeNode* nonItalicNode = GlyphPageTreeNode::getRootChild(nonItalicFontData.get(), pageNumber);
> +    GlyphPage* nonItalicPage = nonItalicNode->page();

Nit: these aren't used if page is NULL.
Comment 5 Dean Jackson 2013-06-18 10:05:33 PDT
(In reply to comment #4)
> (From update of attachment 204883 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=204883&action=review
> 
> > Source/WebCore/platform/graphics/FontGlyphs.cpp:207
> > +    RefPtr<SimpleFontData> nonItalicFontData = data.fontData->nonSyntheticItalicFontData();
> > +    GlyphPageTreeNode* nonItalicNode = GlyphPageTreeNode::getRootChild(nonItalicFontData.get(), pageNumber);
> > +    GlyphPage* nonItalicPage = nonItalicNode->page();
> 
> Nit: these aren't used if page is NULL.

That was a typo. It should have been if (nonItalicPage).

Thanks for noticing!
Comment 6 Enrica Casucci 2013-06-18 10:53:30 PDT
Comment on attachment 204883 [details]
Patch

Looks good to me, with the change Eric pointed out. I trust you to fix the 2 qt builds before landing the patch.
Comment 7 Dean Jackson 2013-06-18 12:40:25 PDT
Created attachment 204932 [details]
Patch
Comment 8 Dean Jackson 2013-06-18 13:30:33 PDT
Committed r151693: <http://trac.webkit.org/changeset/151693>