Package Exports
- @resvg/resvg-js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@resvg/resvg-js) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
resvg-js
A high-performance SVG renderer, powered by Rust based resvg and napi-rs.
- Very fast, safe and zero dependencies!
- Cross-platform support, including Apple M1.
- No need for node-gyp and postinstall, the
.nodefile has been compiled for you. - Support system fonts and custom fonts in SVG text.
Installation
npm i @resvg/resvg-js
cnpm i @resvg/resvg-js
pnpm i @resvg/resvg-jsExample
This example will load Source Han Serif, and then render the SVG to PNG.
node example/index.js
Loaded 1 font faces in 0ms.
Font './example/SourceHanSerifCN-Light-subset.ttf':0 found in 0.006ms.
✨ Done in 55.65491008758545 ms| SVG | PNG |
|---|---|
![]() |
Support matrix
Build
You can set the name of the generated .node file in napi.name of package.json.
After npm run build command, you can see resvgjs.[darwin|win32|linux].node file in project root. This is the native addon built from lib.rs.
Develop requirements
- Install latest
Rust - Install
Node.js@10+which fully supportedNode-API - Install
yarn@1.x
Test in local
- yarn
- yarn build
- yarn test
And you will see:
$ ava --verbose
✔ sync function from native code
✔ sleep function from native code (201ms)
─
2 tests passed
✨ Done in 1.12s.Release package
We use GitHub actions to automatically publish npm packages.
# 1.0.0 => 1.0.1
npm version patch
# or 1.0.0 => 1.1.0
npm version minor
git push --follow-tags