-
Notifications
You must be signed in to change notification settings - Fork 3.2k
HTML-in-Canvas #10650
Copy link
Copy link
Open
Labels
addition/proposalNew features or enhancementsNew features or enhancementsagenda+To be discussed at a triage meetingTo be discussed at a triage meetingneeds implementer interestMoving the issue forward requires implementers to express interestMoving the issue forward requires implementers to express intereststage: 2IterationIterationtopic: canvas
Metadata
Metadata
Assignees
Labels
addition/proposalNew features or enhancementsNew features or enhancementsagenda+To be discussed at a triage meetingTo be discussed at a triage meetingneeds implementer interestMoving the issue forward requires implementers to express interestMoving the issue forward requires implementers to express intereststage: 2IterationIterationtopic: canvas
Type
Fields
Give feedbackNo fields configured for issues without a type.
What problem are you trying to solve?
High-performance web applications rely on
<canvas>for control over rendering that goes beyond standard HTML/CSS. However, by using<canvas>, they lose all the rich, built-in features of the web platform, including:This forces a bad trade-off: developers must either re-implement these fundamental browser features in JS, or simply not provide them, resulting in a sub-par, inaccessible user experience.
What solutions exist today?
fillText()andstrokeText()are limited in that they only draw a single, un-wrapped line of text with a single style. They have no concept of layout, internationalization, or interactivity. WebGL provides no text rendering support at all.How would you solve it?
Add the ability to render elements from the canvas subtree directly into canvas, and add the ability to make this rendering interactive (forwarding input and handling updates). Adding these capabilities enables canvas surfaces to benefit from all of the styling, layout and behaviors of HTML/SVG.
Anything else?
This feature is being incubated in WICG following the WHATWG standards process.
Explainer: https://github.com/WICG/html-in-canvas
Ongoing prototyping in Chromium
Contributor: Google, Igalia
Workstream: HTML