Contact emails

[email protected], [email protected], [email protected]

Explainer

placeElement technical paper [public] 
<https://docs.google.com/document/d/1zIvUIdRSEQDXa5SEEqaOKhqyRM6w8ALj-GmzADia4dk/edit#heading=h.yxl2cj85bazz>

Specification

None

Summary

placeElement() allows users of 2D and 3D canvases to draw arbitrary HTML 
elements into their canvas rendering contexts. This allows for greater 
flexibility in text rendering and accessibility for canvases. 

Blink component

Blink>Canvas 
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ECanvas>

Motivation

Text support on canvas is far behind the rest of the web: it is not 
indexable nor accessible and multiline rendering is challenging and 
limited. placeElement() proposes an API that allows users to bring the 
power of HTML/CSS text formatting into canvases by drawing HTML elements 
within canvas rendering contexts.

This will not only allow webapps that use 2D or 3D canvases to leverage all 
the text formatting and styling options available to HTML (not to mention 
the possibility of scrolling, spellcheck, translate, etc.), but makes all 
of HTML available to canvas! Radio buttons with chromatic aberration! 
Platformer games with dropdown menus as obstacles! The possibilities are 
endless.

Initial public proposal

https://logs.csswg.org/irc.w3.org/css/2024-06-12/#e1628190

TAG review

None

TAG review status

Pending

Risks

Interoperability and Compatibility

None

Gecko: No signal

WebKit: No signal

Web developers: Extremely positive. See placeElement Twitter Feedback 
<https://docs.google.com/document/d/1szUeMmgS6e-C6JNgnEWQ8AkGmgCG10vXOH9tJObDzVU/edit?usp=sharing>


WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that 
it has potentially high risk for Android WebView-based applications?

None


Debuggability

None

Is this feature fully tested by web-platform-tests 
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?

Tests will be added as we prototype

Flag name on chrome://flags

canvas-place-element

Finch feature name

None

Non-finch justification

The feature will be flag guarded.

Requires code in //chrome?

False

Estimated milestones

No milestones specified

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5172548013916160?gate=6290777780256768

This intent message was generated by Chrome Platform Status 
<https://chromestatus.com/>.

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/a473b17f-def6-4bb7-85ee-344947c5ecabn%40chromium.org.

Reply via email to