Summary: | New border-radius path-based drawing code has some issues with corner-joins | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Beth Dakin <bdakin> | ||||||||
Component: | CSS | Assignee: | Nobody <webkit-unassigned> | ||||||||
Status: | RESOLVED FIXED | ||||||||||
Severity: | Normal | CC: | bdakin, jamesr | ||||||||
Priority: | P2 | ||||||||||
Version: | 528+ (Nightly build) | ||||||||||
Hardware: | PC | ||||||||||
OS: | OS X 10.5 | ||||||||||
Attachments: |
|
Description
Beth Dakin
2010-07-19 16:37:15 PDT
Created attachment 62015 [details]
Patch
Here is a patch that disables anti-aliasing when the border is all one color. I chose not to disable anti-aliasing all the time because I felt like there were some examples in the fast/border directory that looked worse when anti-aliasing was disabled in all cases. It always looks better when the border is all one color though.
Comment on attachment 62015 [details]
Patch
Building a better patch…
Created attachment 62246 [details]
New patch
Here is a smarter patch that can handle anti-aliasing some corners and not others. Dan also suggested changing the boolean parameter to GraphicsContext::clipConvexPolygon() into an enum. I didn't do this only because I couldn't think of a good name for the enum. Any ideas?
Comment on attachment 62246 [details]
New patch
r=me with some polish suggested in person
Thanks Dan! Fixed with http://trac.webkit.org/changeset/63864 There are visible seams in many of the new expected results - for example the top left and bottom right of http://trac.webkit.org/export/63877/trunk/LayoutTests/platform/mac/fast/borders/borderRadiusOutset01-expected.png. It does look better than the previous behavior (which was http://trac.webkit.org/export/63877/trunk/LayoutTests/platform/chromium-mac/fast/borders/borderRadiusOutset01-expected.png) but still not very good. Is there another bug to track this? (In reply to comment #6) > There are visible seams in many of the new expected results - for example the top left and bottom right of http://trac.webkit.org/export/63877/trunk/LayoutTests/platform/mac/fast/borders/borderRadiusOutset01-expected.png. It does look better than the previous behavior (which was http://trac.webkit.org/export/63877/trunk/LayoutTests/platform/chromium-mac/fast/borders/borderRadiusOutset01-expected.png) but still not very good. Is there another bug to track this? Actually I don't seem any visible seems in the results for that test. Could you provide a screenshot demonstrating the problem that you see? Created attachment 62312 [details]
Pixie screenshot
Here's a pixie zoom-in of the lower right corner which you said has a visible seam. I don't see one.
You're right, that looks perfectly smooth. I must have been seeing things after staring at too many pixel results. Sorry for the noise! No worries. I totally know the feeling :-) |