W3C home > Mailing lists > Public > www-style@w3.org > January 2016

Re: [css-images] Negative implications of linear gradient color space choice in CSS

From: Mark Straver <mark@wolfbeast.com>
Date: Tue, 26 Jan 2016 00:13:47 +0100
Message-ID: <56A6AC2B.3000504@wolfbeast.com>
To: Rik Cabanier <cabanier@gmail.com>, "Tab Atkins Jr." <jackalmage@gmail.com>
CC: Simon Fraser <smfr@me.com>, www-style list <www-style@w3.org>
On 25/01/2016 20:17, Rik Cabanier wrote:
>     In my own testing in the past, I only needed a few stops.  You need
>     more if you're manually arcing a path *in fully opaque colors*, but
>     it's hard to see seams in the mostly-transparent sections.
> 
> For darker colors, maybe. The eye picks up even subtle stepping in light colors. 

I'd have to agree here. Unless you want to manually add a LOT of stops, it's
not going to look pretty -- and it'll never be perfect, either.
Anyone with a decent screen would certainly see problems with an "emulated"
gradient with stops like that. I can't even imagine how this is going to look
on the next generation of 4k screens where this would become even more prominent.

> Just saying that this should be tested to make sure it doesn't look weird.
> 
>     (The underlying discussion of "can we change the behavior of today's
>     gradients" is almost certainly no, regardless of what details we
>     quibble over.)
> I was resigned to that because I thought all browsers were in agreement. With
> Safari being the exception and another advocate, my hopes are up again :-)

I think a picture says more than 1000 words here.
Let me demonstrate exactly what I mean and what would logically be expected
when you'd create gradients, designing transparent transitions/overlays.
This is a live example from a browser using the proposed solution and NOT
premultiplying, with the CSS gradient code listed above the results for clarity.

https://dl.dropboxusercontent.com/u/1466747/lwt-test/gradient-transparent-test.png

Look at the CSS, and look at the picture - aren't these exactly the results
you'd logically want when looking at the gradient definitions? A designer
doesn't care about the exact underlying calculations or the math involved; a
designer wants to get what they expect when they provide instructions for a
specific goal.

Call me a rebel, but no quibbling over details will want me to move away from
this result with a series of less accurate (and potentially ugly) workarounds
just to satisfy the (apparently less gfx-native) "must use premultiplied
colors" point. The problem is simple, the solution is simple. There's no
reason to be stubborn about it :P
Received on Monday, 25 January 2016 23:14:27 UTC

This archive was generated by hypermail 2.4.0 : Friday, 25 March 2022 10:08:59 UTC