Huh, it's more than just a rendering API: "can render to windows using an OS-native graphics pipeline and provides a browser-like UI event framework". They could add wgpu to get WebGPU support and ANGLE to get WebGL support.
Skia is a widely used library (off the top of my head, Chrome, Firefox, and LibreOffice use it) that supports lots of rendering targets, including WebGPU and ANGLE.
Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
51–60 of 91 posts
Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#52The missing C API for Skia is most likely why Cairo is still alive.
Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#53It was my first open-source project, released about 3 years ago.
I had plans to also expose WebGL, audio, etc and make it a viable platform for Javascript-based games on desktop.
Life and other projects happened instead, and development was discontinued. Happy to see this project also making Canvas accessible outside the browser!
Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#54Out of curiosity, what's the use for such library? If you are on a desktop surely there is a better native library to draw shapes, no?
Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#55Out of curiosity, what's the use for such library? If you are on a desktop surely there is a better native library to draw shapes, no?
There isn’t really anything commonly “native” as powerful as skia for 2D drawing and a big part of skia is using the native graphics effectively, this is why it exists in the first place for browser engines. Besides having one target API is a benefit.
Cairo?
Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#56What does "based on Skia" actually mean? Is it a fork of Skia? Does it depend on Skia? Did somebody look at a design diagram of Skia and redo the whole thing from scratch? Did they read about Skia in a blogpost and get the gist of it?
This one
Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#57Earlier quoted context omitted.
They're not saying Skia itself is browserless; they're saying that "Skia Canvas" is a non-browser-based implementation of what people would normally call the browser Canvas API.
Automattic created node-canvas a long time ago which was based around Cairo.
Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#58Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#59Earlier quoted context omitted.
There isn’t really anything commonly “native” as powerful as skia for 2D drawing and a big part of skia is using the native graphics effectively, this is why it exists in the first place for browser engines. Besides having one target API is a benefit.
> There isn’t really anything commonly “native” as powerful as skia for 2D drawing Cairo?
Re: Skia Canvas: Browserless implementation of the HTML Canvas drawing API for node
#60How is it different from jimp? https://jimp-dev.github.io/jimp/ Maybe there are some killer features?
The only similarity between the two is that they deal with images. That library only resizes and does other basic pixel level operations. Skia is for drawing vector graphics.
What do you mean by "vector graphics"?
Both Canvas and ImageData work only with pixels.