Opened 2 years ago
Last modified 2 years ago
#18079 new bug
Webpositive renders antialiasing for all vector graphics in reverse order.
Reported by: | ffever | Owned by: | pulkomandy |
---|---|---|---|
Priority: | normal | Milestone: | Unscheduled |
Component: | Kits/Web Kit | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
This is easy to spot in places where there's a vector image next to a text. For example the navigation buttons on duckduckgo.com's search page. If you watch closely, you will see that antialiasing for text and graphics is in reverse order.
I will attach a file to illustrate this better.
Running Haiku hrev56595 x86_64, on hardware.
Thank you.
Attachments (3)
Change History (8)
by , 2 years ago
Attachment: | reverse-aa.png added |
---|
comment:1 by , 2 years ago
Component: | Applications/WebPositive → Kits/Web Kit |
---|
I don't understand what you mean with reverse order
comment:2 by , 2 years ago
"vector images" seem to have AA colors in blue/orange order, and text has it as orange/blue order (left/right of edges). At least that's what I see on the test image.
comment:3 by , 2 years ago
IIRC We only use antialiasing for text, and these "vector images" are also in a font. The rendering will look differently depenfing in where on your lcd exactly the glyph is supposed to show.
This far I am not sure it really is a bug?
comment:4 by , 2 years ago
Said "vector images" are SVG graphics. Either included with <img src=""> tag or drawn inside html directly with <svg> tag, they all seem to use antialiasing to look clearer on a subpixel level. But since the antialiasing is applied in reverse, the borders look off. Shortly I'll attach some more screenshots to illustrate the issue further.
Update:
By antialiasing being in reverse order I meant what bipolar mentioned in his comment. The antialiasing works correctly for fonts (for displays with RGB subpixel order), and it works for SVG graphics too, but it would display correctly for displays with BGR subpixel order. It's just weird that different types of graphics have different kind of antialiasing.
I'm sorry for being vague in my explaination.
by , 2 years ago
Attachment: | Haiku-website-svg-aa.png added |
---|
Haiku logo has odd looking borders, because antialiasing for it's vector image being rendered in backwards order. This logo on the website is in svg format. The fonts however, are rendered correctly.
by , 2 years ago
Attachment: | firefox-svg-aa.png added |
---|
Same thing, but rendered in firefox on windows.
comment:5 by , 2 years ago
IIRC We only use antialiasing for text, and these "vector images" are also in a font.
This is incorrect, twice.
We use antialiasing for everything, and this is SVG which is not text.
All the drawing is pretty much forwaroed directly to app_server then agg, so I'm not sure how we can end up in this situation. I don't think extra screenshots are needed, the issue is very clear (and already known at least to me, since it's easy to see that something is wrong)
It may be caused by the use of alpha masks, which may end up inverting colors if they are implemented wrong?
Two magnified screenshots of the related issue. left: Navigation button under search prompt at duckduckgo; right: a test in a simple, custom made html document.