W3C home > Mailing lists > Public > whatwg@whatwg.org > April 2013

Re: [whatwg] Enabling LCD Text and antialiasing in canvas

From: Rik Cabanier <cabanier@gmail.com>
Date: Fri, 19 Apr 2013 16:02:58 -0700
Message-ID: <CAGN7qDDvpsOk8J57_46K502HBzuWHwq0-=7i9jNQqzzgGaUjwg@mail.gmail.com>
To: Stephen White <senorblanco@chromium.org>
Cc: Gregg Tavares <gman@google.com>, WHATWG <whatwg@lists.whatwg.org>, James Robinson <jamesr@google.com>, Mark Callow <callow.mark@artspark.co.jp>, Robert O'Callahan <robert@ocallahan.org>
On Fri, Apr 19, 2013 at 10:35 AM, Stephen White <senorblanco@chromium.org>wrote:

> Thanks for your comments.
>
> On Fri, Apr 19, 2013 at 12:53 PM, Rik Cabanier <cabanier@gmail.com> wrote:
>
>> Nice!
>>
>> The behaviour of putImageData() and putImageDataHD() is to premultiply
>> the RGB components by the alpha component as usual, but write 1.0 into
>> destination alpha. In other words, if (r, g, b, a) are the component values
>> in a given pixel passed to putImageData[HD](), then r' = ar, g' = ag, b' =
>> ab are the colour components of the resulting canvas pixel, and (r', g',
>> b', 1.0) is written to the canvas backing store.
>>
>> I think that's confusing. Maybe cut that sentence since it isn't needed.
>> (Having the black backing store implies this behavior)
>>
>
> Do you mean, remove both sentences, or just the last one?  I wanted to
> make it clear that the RGB is still premultiplied with the original alpha,
> even though the alpha is subsequently ignored.
>

O yes. This has to be defined.


>
> attribute boolean alpha;
>>
>> Should it be read-only?
>
>
> Hmm, I have no idea.  WebGL's doesn't have it, but I'm not enough of an
> IDL expert to know whether it's necessary.
>

This implies that you can change it which is not allowed according to your
wiki:

*Q:* Can you call getContext more than once on the same canvas, with
different values for { alpha }?

*A:* No. Once it has been called once, the type of the backing store is
set. Calling it again with a different argument raises an exception.



>
>
>>
>> Canvas2DContextAttributes getContextAttributes();
>>
>> Maybe make it an attribute:
>>
>> attribute Canvas2DContextAttributes attributes:
>>
>>
> I'm following WebGL syntax here as well.  Apparently WebGL's is nullable,
> though, so I've added ? here.
>
> Stephen
>
>>
>> On Fri, Apr 19, 2013 at 9:13 AM, Stephen White <senorblanco@chromium.org>wrote:
>>
>>> Here's a short proposal I've written up for the getContext('2d', {
>>> alpha: false } ) version of this idea (much of it culled from the
>>> mega-thread above).
>>>
>>> http://wiki.whatwg.org/wiki/CanvasOpaque
>>>
>>> Comments are welcome.
>>>
>>> Stephen
>>>
>>
>>
>
Received on Friday, 19 April 2013 23:03:22 UTC

This archive was generated by hypermail 2.4.0 : Wednesday, 22 January 2020 16:59:57 UTC