WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
112213
Character orientation should follow UTR50 specs for vertical layout
https://bugs.webkit.org/show_bug.cgi?id=112213
Summary
Character orientation should follow UTR50 specs for vertical layout
Enrica Casucci
Reported
2013-03-12 17:26:40 PDT
This bug track the remaining work to correct character orientation in vertical layout according to the specs in www.unicode.org/reports/tr50/tr50-6.Orientation.txt <
rdar://problem/12880943
>
Attachments
Patch
(26.00 KB, patch)
2013-03-12 17:33 PDT
,
Enrica Casucci
rniwa
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Enrica Casucci
Comment 1
2013-03-12 17:33:37 PDT
Created
attachment 192841
[details]
Patch
Sam Weinig
Comment 2
2013-03-12 20:40:38 PDT
Comment on
attachment 192841
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=192841&action=review
> Source/WebCore/ChangeLog:11 > + This patch modifies shouldIgnoreRotation to include all the characters that > + should not be rotated sideways in vertical layout according to the UTR50 draft 6 > + specifications. It also fixes rotation for Emojii.
You should note which tests this changes.
Ryosuke Niwa
Comment 3
2013-03-14 14:35:16 PDT
Comment on
attachment 192841
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=192841&action=review
I trust you that you've updated the table correctly. Please add the new pixel results before you land.
> Source/WebCore/platform/graphics/FontFastPath.cpp:-47 > - switch (character) {
I'm concerned that this might regress performance but I guess we can land and see if it does.
> Source/WebCore/platform/graphics/FontFastPath.cpp:53 > + if (character >= 0x002E5 && character <= 0x002EB)
Maybe we can add a helper function like isInRange so that we can write this like isInRange(character, 0x002E5, 0x002EB)
> Source/WebCore/platform/graphics/mac/FontMac.mm:101 > + CGAffineTransform savedMatrix;
I wich this entire block were broken up into smaller inline functions but that can be done in a separate patch.
> Source/WebCore/platform/graphics/mac/FontMac.mm:115 > + } else { > + translationsTransform = rotateLeftTransform; > + }
Nit: no curly brackets around a single line statement as you pointed out in person.
Enrica Casucci
Comment 4
2013-03-14 14:44:26 PDT
(> I'm concerned that this might regress performance but I guess we can land and see if it does. This function gets called only for vertical layout, so if there is a regression, it should be limited to the vertical layout case.
> > > Source/WebCore/platform/graphics/FontFastPath.cpp:53 > > + if (character >= 0x002E5 && character <= 0x002EB) > > Maybe we can add a helper function like isInRange so that we can write this like isInRange(character, 0x002E5, 0x002EB)
> That is a good idea. It will make the code more readable.
Enrica Casucci
Comment 5
2013-03-14 15:45:49 PDT
Committed revision 145854.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug