-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Hello! We make Paper, which is a browser-based design tool, a bit like Sketch or Figma. We use DOM to render, which lets designers do cool things like design with shaders, import their actual code components, and design with anything else HTML can do (like video embeds).
I'm pretty excited about html-in-canvas because it might help us solve three of our bigger challenges:
-
Our eye dropper is very limited to the EyeDropper API. We can't control the color format of the preview. And we can't update anything as the user hovers, because we don't find out about the color until they click.
-
Exporting a design reliably as a PNG is currently impossible (without an electron wrapper). The best solution at the moment is
dom-to-image-more, but all SVG/canvas based approaches will miss some CSS (like backdrop-filter). The methods of taking a screenshot with browser APIs or extension APIs all have flaws that make them not good enough for professional designer use. -
This is already in your design, but applying our WebGL filters to underlying HTML content (e.g., "liquid glass") would be a major unlock. Right now our shaders let users upload images, but obviously can't filter HTML content underneath them (without expensive and imperfect workarounds like
dom-to-image-more)
My hope would be that we can reliably render our DOM into a canvas element so that we can sample pixel data exactly as the designer sees it. Both for eye dropper and PNG file export use cases.
I hope it's helpful to hear about our use cases. Great API idea, we're excited to try it out in many ways.
(screenshot of Paper for context)
