[webkit-dev] Request for position: New Canvas 2D API
Simon Fraser
simon.fraser at apple.com
Mon May 3 09:58:25 PDT 2021
> On May 1, 2021, at 10:07 AM, Aaron Krajeski via webkit-dev <webkit-dev at lists.webkit.org> wrote:
>
> Hi webkit-dev,
>
> This is a request for WebKit's position on New Canvas 2D API <https://github.com/fserb/canvas2D/blob/master/rationale.md> features.
>
> Explainer/Chrome Dev Summit Video
> https://github.com/fserb/canvas2d <https://github.com/fserb/canvas2d>
> https://youtu.be/dfOKFSDG7IM <https://youtu.be/dfOKFSDG7IM>
>
> Summary
> Updated functionality for the Canvas2D API. Adds nine new features/functions to CanvasRenderingContext2D:
> - "ContextLost" and "ContextRestored" events
Seems reasonable.
> - "willReadFrequently" option for canvases where lots of readback is expected
Seems reasonable.
> - CSSColorValues as style inputs
Seems reasonable (gated on Typed OM support).
> - More CSS text modifier support
WebKit has already expressed support for the proposal.
> - A reset function
We'e already expressed some concerns in the issue.
> - A roundRect draw primitive
Seems reasonable.
> - Full 4x4 transformation matrices
WebKit's architecture on macOS/iOS currently has no way to render these, so we don't support this proposal at this time.
> - Conic gradients
Seems reasonable.
> - Better support for SVG filters
Seems reasonable, although this would have performance implications in our current architecture.
Simon
>
> Contact emails
> aaronhk at chromium.org <mailto:aaronhk at chromium.org>, fserb at chromium.org <mailto:fserb at chromium.org>
>
> Spec and tests
> - WHATWG spec in progress:
> Text Modifiers <https://github.com/whatwg/html/pull/6560>
> Filters <https://github.com/web-platform-tests/wpt>
> Perspective Transforms <https://github.com/whatwg/html/issues/5620>
> reset() <https://github.com/whatwg/html/issues/5618>
> CSSColorValue <https://github.com/whatwg/html/issues/5616>
> willReadFrequently <https://github.com/whatwg/html/issues/5614>
> RoundRect <https://github.com/whatwg/html/issues/5619>
> ConicGradient <https://github.com/whatwg/html/issues/5431>
> Context Loss <https://github.com/whatwg/html/issues/4809>
> - MDN spec
> Conic gradient <https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/createConicGradient>
> Text Modifiers <https://github.com/GoogleChromeLabs/puppy-content/pull/23> (via ChromeLabs/puppy-content)
> - Web platform tests
> RoundRect <https://github.com/web-platform-tests/wpt/tree/7b0ebaccc62b566a1965396e5be7bb2bc06f841f/html/canvas/element/path-objects>
> reset() <https://github.com/web-platform-tests/wpt/tree/master/html/canvas/element/reset>
> Perspective Transforms <https://github.com/web-platform-tests/wpt/tree/master/html/canvas/element/transformations>
> Context Loss <https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/web_tests/fast/canvas/canvas-lost-gpu-context.html?q=f:web_tests%20canvas%20context%20lost&sq=package:chromium> (this is not testable on WPT)
> Filters <https://github.com/web-platform-tests/wpt/tree/master/html/canvas/element/shadows>
> CSSColorValue Input <https://chromium-review.googlesource.com/c/chromium/src/+/2794982>
> WillReadFrequently <https://source.chromium.org/chromium/chromium/src/+/master:third_party/blink/web_tests/fast/canvas/OffscreenCanvas-2d-willReadFrequently.html?q=f:web_tests%20canvas%20willreadfrequently&sq=package:chromium> (testable in WPT, work in progress to add tests there)
> Conic Gradient <https://github.com/web-platform-tests/wpt/blob/master/html/canvas/element/fill-and-stroke-styles/2d.gradient.conic.html>
> Text Modifiers <https://github.com/web-platform-tests/wpt/tree/master/html/canvas/element/drawing-text-to-the-canvas>
> - Chrome Status <https://chromestatus.com/feature/6051647656558592>
>
> Look forward to hearing your feedback!
>
> Cheers!
> Aaron
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20210503/1c88b0e7/attachment.htm>
More information about the webkit-dev
mailing list