Canvas for Node.js with skia backend
Last release 3 days ago
24 Aug 2026
Release timing varies
gaps range from 8 days to 2 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
5 years old
119 releases · first in 2021
Release timeline
119 releases since 2021Releases
- 0.1.4821 Feb 2024
Release notes
Open source →What's Changed
- fix: memory leak in Canvas encode by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/786
- fix: isPointInPath/isPointInStroke should respect transform by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/787
- fix: map points args order by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/788
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.47...v0.1.48
- 0.1.4719 Feb 2024
Release notes
Open source →What's Changed
- fix: DOMMatrix#transformPoint by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/782
- fix: font css parser should handle the font height by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/783
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.46...v0.1.47
- 0.1.4619 Feb 2024
Release notes
Open source →What's Changed
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.24.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/777
- chore(deps): update typescript-eslint monorepo to v7 (major) by @renovate in https://github.com/Brooooooklyn/canvas/pull/778
- fix(deps): update rust crate libavif to 0.13 by @renovate in https://github.com/Brooooooklyn/canvas/pull/779
- fix: draw text on svg by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/780
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.45...v0.1.46
Additional notes
Open source → - 0.1.455 Feb 2024
Release notes
Open source →What's Changed
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.21.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/712
- chore(deps): update yarn to v3.6.3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/714
- chore(deps): update dependency conventional-changelog-cli to v4 by @renovate in https://github.com/Brooooooklyn/canvas/pull/715
- chore(deps): update docker/login-action action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/721
- chore(deps): update docker/setup-qemu-action action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/723
- chore(deps): update actions/checkout action to v4 by @renovate in https://github.com/Brooooooklyn/canvas/pull/718
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/717
- chore(deps): update docker/build-push-action action to v5 by @renovate in https://github.com/Brooooooklyn/canvas/pull/720
- chore(deps): update docker/setup-buildx-action action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/722
- chore(deps): update yarn to v3.6.4 by @renovate in https://github.com/Brooooooklyn/canvas/pull/728
- ci: fix android build by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/729
- chore(deps): update dependency canvaskit-wasm to ^0.39.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/733
- chore(deps): update dependency lint-staged to v15 by @renovate in https://github.com/Brooooooklyn/canvas/pull/734
- chore(deps): update actions/setup-node action to v4 by @renovate in https://github.com/Brooooooklyn/canvas/pull/738
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/742
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.22.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/744
- chore: upgrade yarn4, drop node@16 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/743
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.23.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/745
- chore(deps): update yarn to v4.0.2 by @renovate in https://github.com/Brooooooklyn/canvas/pull/746
- chore(deps): update dependency ava to v6 by @renovate in https://github.com/Brooooooklyn/canvas/pull/752
- chore(deps): update actions/setup-python action to v5 - autoclosed by @renovate in https://github.com/Brooooooklyn/canvas/pull/753
- fix: use
drawPicturein some blending modes such asdestination-inby @nieyuyao in https://github.com/Brooooooklyn/canvas/pull/755 - chore(deps): update actions/cache action to v4 by @renovate in https://github.com/Brooooooklyn/canvas/pull/760
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/751
- Added a couple of examples of the
loadImagefunction to README.md by @jrc03c in https://github.com/Brooooooklyn/canvas/pull/732 - chore(deps): update dependency husky to v9 by @renovate in https://github.com/Brooooooklyn/canvas/pull/765
- chore(deps): update yarn to v4.1.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/767
- chore(deps): replace dependency npm-run-all with npm-run-all2 ^5.0.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/766
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/770
- chore(deps): update dependency npm-run-all2 to v6 by @renovate in https://github.com/Brooooooklyn/canvas/pull/769
- chore(deps): update dependency @taplo/cli to ^0.7.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/772
- feat: upgrade skia to chrome/122 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/775
- fix: Dependency error introduced in the Chinese document Emoji text demo by @wangjue666 in https://github.com/Brooooooklyn/canvas/pull/750
- feat: upgrade Rust toolchain by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/776
New Contributors
- @jrc03c made their first contribution in https://github.com/Brooooooklyn/canvas/pull/732
- @wangjue666 made their first contribution in https://github.com/Brooooooklyn/canvas/pull/750
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.44...v0.1.45
- 0.1.4422 Aug 2023
Release notes
Open source →What's Changed
- chore(deps): update dependency lint-staged to v14 by @renovate in https://github.com/Brooooooklyn/canvas/pull/710
- chore(deps): update yarn to v3.6.2 by @renovate in https://github.com/Brooooooklyn/canvas/pull/711
- fix: file extensions in
loadFontsFromDir()are no longer case-sensitive by @yisibl in https://github.com/Brooooooklyn/canvas/pull/707
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.43...v0.1.44
Additional notes
Open source →Bug Fixes
- file extensions in
loadFontsFromDir()are no longer case-sensitive (9342e33)
- 0.1.4311 Aug 2023
Release notes
Open source →What's Changed
- chore: upgrade rust toolchain by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/700
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.42...v0.1.43
- 0.1.428 Aug 2023
Release notes
Open source →What's Changed
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/677
- chore(deps): update yarn to v3.6.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/678
- fix: url is string type by @specialCoder in https://github.com/Brooooooklyn/canvas/pull/671
- build: fix aarch64-unknown-linux-musl target by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/698
- chore(deps): update yarn to v3.6.1 by @renovate in https://github.com/Brooooooklyn/canvas/pull/683
- fix(deps): update rust crate infer to 0.15 by @renovate in https://github.com/Brooooooklyn/canvas/pull/682
- chore: upgrade deps by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/699
- fix: add
ctx.canvasproperty on svg context by @skdhg in https://github.com/Brooooooklyn/canvas/pull/697 - chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/703
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.20.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/706
- chore(deps): update dependency eslint-config-prettier to v9 by @renovate in https://github.com/Brooooooklyn/canvas/pull/708
- chore(deps): upgrade skia to m116 by @nieyuyao in https://github.com/Brooooooklyn/canvas/pull/702
New Contributors
- @specialCoder made their first contribution in https://github.com/Brooooooklyn/canvas/pull/671
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.41...v0.1.42
- 0.1.4122 May 2023
Release notes
Open source →What's Changed
- docs: add note about AWS Lambda layer by @ShivamJoker in https://github.com/Brooooooklyn/canvas/pull/661
- build: upgrade llvm to 16 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/665
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/667
- chore(deps): update yarn to v3.5.1 by @renovate in https://github.com/Brooooooklyn/canvas/pull/668
- fix: adjust order of generating bitmap by @nieyuyao in https://github.com/Brooooooklyn/canvas/pull/675
New Contributors
- @ShivamJoker made their first contribution in https://github.com/Brooooooklyn/canvas/pull/661
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.40...v0.1.41
- 0.1.409 Apr 2023
Release notes
Open source →What's Changed
- chore(deps): update yarn to v3.5.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/650
- chore(deps): update dependency typescript to v5 by @renovate in https://github.com/Brooooooklyn/canvas/pull/651
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.19.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/652
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/655
- feat: chrome/m113 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/656
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.39...v0.1.40
- 0.1.3914 Mar 2023
Release notes
Open source →What's Changed
- fix: set empty src to Image by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/649
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.38...v0.1.39
- 0.1.3811 Mar 2023
Release notes
Open source →What's Changed
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/643
- fix(deps): update rust crate infer to 0.13 by @renovate in https://github.com/Brooooooklyn/canvas/pull/644
- feat: skia/m112 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/648
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.37...v0.1.38
Additional notes
Open source → - 0.1.3727 Feb 2023
Release notes
Open source →What's Changed
- fix: reject if image is not supported by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/642
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.36...v0.1.37
- 0.1.3621 Feb 2023
Release notes
Open source →What's Changed
- ci: pin apple emoji version by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/640
- fix: recalc paint_x according to align if maxWidth is set by @nieyuyao in https://github.com/Brooooooklyn/canvas/pull/639
New Contributors
- @nieyuyao made their first contribution in https://github.com/Brooooooklyn/canvas/pull/639
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.35...v0.1.36
Additional notes
Open source → - 0.1.3516 Feb 2023
Release notes
Open source →What's Changed
- chore(deps): update dependency canvaskit-wasm to ^0.38.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/607
- build: fix aarch64 linux and aarch64 android build by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/612
- fix(deps): update rust crate libavif to 0.11 by @renovate in https://github.com/Brooooooklyn/canvas/pull/608
- chore(deps): update yarn to v3.4.1 by @renovate in https://github.com/Brooooooklyn/canvas/pull/613
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/611
- chore(deps): update docker/build-push-action action to v4 by @renovate in https://github.com/Brooooooklyn/canvas/pull/610
- chore(deps): update dependency @jimp/core to ^0.17.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/615
- chore(deps): update dependency @jimp/custom to ^0.17.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/616
- chore(deps): update dependency @jimp/jpeg to ^0.17.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/617
- chore(deps): update dependency @jimp/png to ^0.17.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/618
- chore(deps): update dependency @jimp/core to ^0.21.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/619
- chore(deps): update dependency @jimp/custom to ^0.21.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/620
- chore(deps): update dependency @jimp/jpeg to ^0.21.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/621
- chore(deps): update dependency @jimp/png to ^0.21.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/622
- chore: update base64 to 0.21 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/623
- chore(deps): update dependency @jimp/core to ^0.22.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/624
- chore(deps): update dependency @jimp/jpeg to ^0.22.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/626
- chore(deps): update dependency @jimp/custom to ^0.22.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/625
- chore(deps): update dependency @jimp/png to ^0.22.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/627
- fix: canvas instance check by @skdhg in https://github.com/Brooooooklyn/canvas/pull/632
- chore: upgrade toolchain by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/631
- fix: DOMMatrix object to skia Transform convert by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/633
- fix: DOMMatrix to skia Transform by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/634
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.34...v0.1.35
- 0.1.3412 Jan 2023
Release notes
Open source →What's Changed
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.18.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/605
- fix: wrong text baseline calculation in drawText and measureText by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/606
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.33...v0.1.34
Additional notes
Open source → - 0.1.338 Jan 2023
Release notes
Open source →What's Changed
- fix: maxWidth overflow paint_x position should power the scale ratio by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/603
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.32...v0.1.33
Additional notes
Open source → - 0.1.327 Jan 2023
Release notes
Open source →What's Changed
- feat: chrome/m110 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/599
- feat: roundRect by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/601
- fix: getTransform should return DOMMatrix by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/602
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.31...v0.1.32
- 0.1.312 Jan 2023
Release notes
Open source →What's Changed
- chore(deps): update yarn to v3.2.4 by @renovate in https://github.com/Brooooooklyn/canvas/pull/566
- chore: upgrade dependencies by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/567
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/565
- feat: chrome/m107 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/568
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.16.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/570
- feat: chrome/m108 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/574
- chore(deps): update dependency ava to v5 by @renovate in https://github.com/Brooooooklyn/canvas/pull/575
- test: update draw-text-emoji snapshot by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/595
- chore(deps): update yarn to v3.3.1 by @renovate in https://github.com/Brooooooklyn/canvas/pull/585
- chore: upgrade dependencies by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/596
- fix: multiple define on cached native object in jest by @nomagick in https://github.com/Brooooooklyn/canvas/pull/587
- refactor(loadImage): use promise version of existsSync by @almeidx in https://github.com/Brooooooklyn/canvas/pull/582
- fix: missing canvas property on Context2D by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/597
- test: register fonts before test by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/598
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/580
New Contributors
- @nomagick made their first contribution in https://github.com/Brooooooklyn/canvas/pull/587
- @almeidx made their first contribution in https://github.com/Brooooooklyn/canvas/pull/582
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.30...v0.1.31
- 0.1.3022 Sept 2022
Release notes
Open source →What's Changed
- refactor: use libavif rather than ravif by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/549
- fix: TypeScript types for avif config by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/551
- fix: error listening to req by @rambo-panda in https://github.com/Brooooooklyn/canvas/pull/555
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/553
- chore(deps): update dependency canvaskit-wasm to ^0.37.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/556
- fix: ctx.globalAlpha should effect drawImage by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/561
- fix(types): do not use
referencetags by @SuperchupuDev in https://github.com/Brooooooklyn/canvas/pull/563 - docs: fix yarn command by @ragingwind in https://github.com/Brooooooklyn/canvas/pull/562
- fix: resize canvas should clear the context by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/564
New Contributors
- @SuperchupuDev made their first contribution in https://github.com/Brooooooklyn/canvas/pull/563
- @ragingwind made their first contribution in https://github.com/Brooooooklyn/canvas/pull/562
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.29...v0.1.30
- 0.1.2926 Aug 2022
Release notes
Open source →What's Changed
- chore(deps): update dependency canvaskit-wasm to ^0.36.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/533
- docs: add glibc version not less than 2.18 by @yisibl in https://github.com/Brooooooklyn/canvas/pull/537
- fix: isBufferLike in load-image.js by @rambo-panda in https://github.com/Brooooooklyn/canvas/pull/536
- refactor: all modules into NAPI-RS v2 API by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/542
- fix: data url should be standard base64 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/543
- chore(deps): update yarn to v3.2.3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/544
- fix: drawImage alpha should not effect by fillStyle by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/545
- chore: upgrade ava to compatible with Node.js 18.8.0 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/546
- feat: chrome m106 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/547
New Contributors
- @rambo-panda made their first contribution in https://github.com/Brooooooklyn/canvas/pull/536
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.28...v0.1.29
- 0.1.2816 Aug 2022
Release notes
Open source →What's Changed
- fix: adjust Node.js external memory while creating Canvas by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/532
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.27...v0.1.28
Additional notes
Open source →Bug Fixes
- adjust Node.js external memory while creating Canvas (77ecc52)
- 0.1.2714 Aug 2022
Release notes
Open source →What's Changed
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.15.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/523
- docs: Clarify that AVIF is also supported in README by @MajesticString in https://github.com/Brooooooklyn/canvas/pull/524
- fix: segfault while drawing empty text by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/528
- refactor: convert Path to NAPI-RS 2 syntax by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/527
- refactor: GlobalFonts to NAPI-RS v2 syntax by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/529
- refactor: Gradient to NAPI-RS v2 syntax by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/530
New Contributors
- @MajesticString made their first contribution in https://github.com/Brooooooklyn/canvas/pull/524
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.26...v0.1.27
- 0.1.267 Aug 2022
Release notes
Open source →What's Changed
- chore(deps): update dependency canvaskit-wasm to ^0.35.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/494
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/496
- chore(typings): add dom lib reference by @ThisNils in https://github.com/Brooooooklyn/canvas/pull/497
- chore(deps): update dependency @octokit/rest to v19 by @renovate in https://github.com/Brooooooklyn/canvas/pull/500
- chore(deps): update yarn to v3.2.2 by @renovate in https://github.com/Brooooooklyn/canvas/pull/504
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.14.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/505
- fix: redirect handler by @sohamksuvarna in https://github.com/Brooooooklyn/canvas/pull/503
- feat: chrome/m105 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/508
- chore: static link libc++ on aarch64 linux gnu by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/514
- chore(deps): update docker/build-push-action action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/515
- fix: miss applying image_smoothing_enabled and image_smoothing_quality by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/513
- fix: test snapshots diff on arm64 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/516
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/509
- fix: shadow color was not applied correctly by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/517
- chore: remove const enum from .d.ts by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/518
- fix: the quality of toDataURL should between 0 and 1 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/519
- chore(deps): update dependency skia-canvas to v1 by @renovate in https://github.com/Brooooooklyn/canvas/pull/520
- refactor: napi v2 syntax for CanvasElement and SVGCanvas by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/521
New Contributors
- @ThisNils made their first contribution in https://github.com/Brooooooklyn/canvas/pull/497
- @sohamksuvarna made their first contribution in https://github.com/Brooooooklyn/canvas/pull/503
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.25...v0.1.26
Additional notes
Open source →Bug Fixes
- loadImage: redirect handler (dbbf826)
- miss applying image_smoothing_enabled and image_smoothing_quality (815bc91)
- shadow color was not applied correctly (4054e44)
- test snapshots diff on arm64 (21983c2)
- the quality of toDataURL should between 0 and 1 (27e87df)
Features
- chrome/m105 (ade8f64)
- 0.1.2530 Jun 2022
Release notes
Open source →What's Changed
Features
- feat: implement loadImage function by @DevAndromeda in https://github.com/Brooooooklyn/canvas/pull/483
- feat: add stream and alt support for Image by @DevAndromeda in https://github.com/Brooooooklyn/canvas/pull/486
- feat: skia chrome/m104 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/491
Bugfix
- fix: skia async prop deprecated in future release by @Jeve-Stobs in https://github.com/Brooooooklyn/canvas/pull/484
- fix: ctx.filter should store in state and be able to save/restore (b85ee7b) by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/489
- fix: use premultiplied surface as default by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/489
- fix: parameters for drawImage(canvas) (2392263) by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/489
- fix: wrong text metrics if text contains chars not including in current font-family by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/490
- fix: missing
load-image.jsinpackage.jsonby @Brooooooklyn
New Contributors
- @Jeve-Stobs made their first contribution in https://github.com/Brooooooklyn/canvas/pull/484
- @DevAndromeda made their first contribution in https://github.com/Brooooooklyn/canvas/pull/483
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.23...v0.1.25
- 0.1.2430 Jun 2022
Release notes
Open source →What's Changed
Features
- feat: implement loadImage function by @DevAndromeda in https://github.com/Brooooooklyn/canvas/pull/483
- feat: add stream and alt support for Image by @DevAndromeda in https://github.com/Brooooooklyn/canvas/pull/486
- feat: skia chrome/m104 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/491
Bugfix
- fix: skia async prop deprecated in future release by @Jeve-Stobs in https://github.com/Brooooooklyn/canvas/pull/484
- fix: ctx.filter should store in state and be able to save/restore (b85ee7b) by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/489
- fix: use premultiplied surface as default by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/489
- fix: parameters for drawImage(canvas) (2392263) by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/489
- fix: wrong text metrics if text contains chars not including in current font-family by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/490
New Contributors
- @Jeve-Stobs made their first contribution in https://github.com/Brooooooklyn/canvas/pull/484
- @DevAndromeda made their first contribution in https://github.com/Brooooooklyn/canvas/pull/483
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.23...v0.1.24
Additional notes
Open source →Bug Fixes
- ctx.filter should store in state and be able to save/restore (b85ee7b)
- parameters for drawImage(canvas) (2392263)
- skia async prop deprecated in future release (088e628)
- use premultiplied surface as default (f13c1a3)
- wrong text metrics if text contains chars not including in current font-family (cfcca26)
Features
- 0.1.2323 Jun 2022
Release notes
Open source →What's Changed
🚀🚀 Build optimization
You can now use
@napi-rs/canvasin older linux distribution, like debian:stretch- chore(deps): update actions/setup-python action to v4 by @renovate in https://github.com/Brooooooklyn/canvas/pull/475
- build: static link
libc++onx86_64-unknown-linux-gnuby @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/482
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.22...v0.1.23
- 0.1.222 Jun 2022
Release notes
Open source →☢️ Breaking changes
Skia now compiled with
C++ 17instread ofC++ 11https://skia.org/docs/user/build/#supported-and-preferred-compilersFor docker users, you may need to switch to
busterbase image. For example, Node.js 12 and 14 docker images:node:12-busterandnode:14-buster. For Node.js 16+ images, there are no effects for you.What's Changed
- chore: note to improve, libc version detection only supports Node.js >= v13.12.0 or v12.17.0 by @yisibl in https://github.com/Brooooooklyn/canvas/pull/446
- chore(deps): update actions/cache action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/447
- Example with copyrightinfo, Bulid with dependencies by @JoKalliauer in https://github.com/Brooooooklyn/canvas/pull/448
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/452
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.13.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/451
- chrome/m101 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/454
- chore(deps): update dependency putasset to v6 by @renovate in https://github.com/Brooooooklyn/canvas/pull/456
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/457
- chore(deps): update dependency canvaskit-wasm to ^0.34.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/458
- chore(deps): update docker/login-action action to v2 by @renovate in https://github.com/Brooooooklyn/canvas/pull/459
- chore(deps): update dependency husky to v8 by @renovate in https://github.com/Brooooooklyn/canvas/pull/461
- Fix artifacts upload by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/465
- Fix width in
TextMetricswhen text is ending with spaces by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/468 - Fix baseline bottom y offset by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/469
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/471
- chore(deps): update dependency lint-staged to v13 by @renovate in https://github.com/Brooooooklyn/canvas/pull/472
- fix: svg image transparent background should be preserved by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/470
- fix: do nothing if lineTo parameters invalid by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/473
New Contributors
- @JoKalliauer made their first contribution in https://github.com/Brooooooklyn/canvas/pull/448
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.21...v0.1.22
Additional notes
Open source →Bug Fixes
- do nothing if lineTo parameters invalid (0ddeb7c)
- svg image transparent background should be preserved (531bde8)
- width in TextMetrics when text is ending with spaces (5961fd2)
- y offset when textBaseline is bottom (26fdc3c)
Features
- 0.1.2110 Mar 2022
Release notes
Open source →What's Changed
- fix: BlendMode::Source should be copy instead of source by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/425
- chore(deps): update dependency eslint-plugin-sonarjs to ^0.12.0 by @renovate in https://github.com/Brooooooklyn/canvas/pull/427
- chore(deps): update dependency pinst to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/431
- chore(deps): update actions/setup-node action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/433
- chore(deps): update actions/setup-python action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/435
- chore(deps): lock file maintenance by @renovate in https://github.com/Brooooooklyn/canvas/pull/436
- chore(deps): update actions/checkout action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/437
- chore(deps): update actions/download-artifact action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/439
- chore(deps): update actions/upload-artifact action to v3 by @renovate in https://github.com/Brooooooklyn/canvas/pull/440
- Bugfix by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/442
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.20...v0.1.21
- 0.1.2015 Feb 2022
Release notes
Open source →Bug Fixes
- Fix the issue of arc to + bezier to + quad to at empty path case (33f8558)
- scoot method for path empty case (a1eb529)
- the quality default value case of encode(type, quality) method (#418) (c4950ea)
Features
- 0.1.1931 Dec 2021
- 0.1.1830 Dec 2021
Release notes
Open source →What's Changed
- feat: upgrade skia to chrome/m98 by @Brooooooklyn in https://github.com/Brooooooklyn/canvas/pull/395
- Reduce install size for linux glibc/musl by @styfle in https://github.com/Brooooooklyn/canvas/pull/401
New Contributors
- @styfle made their first contribution in https://github.com/Brooooooklyn/canvas/pull/401
Full Changelog: https://github.com/Brooooooklyn/canvas/compare/v0.1.17...v0.1.18
Additional notes
Open source →Bug Fixes
- reduce install size for linux glibc/musl (8e6c7e8)
Features
- upgrade skia to chrome/m98 (99e3635)
- 0.1.1712 Dec 2021
Nothing published for this version
- 0.1.1511 Nov 2021
Release notes
Open source → - 0.1.1426 Oct 2021
Release notes
Open source →Bug Fixes
- Now generating avif images is 10x+ faster. (407d1d1)
- Use different quality for WebP and JPEG formats, which is more in line with the browser's default values. (fdefa5d)
Features
Additional notes
Open source →Bug Fixes
- Now generating avif images is 10x+ faster. (407d1d1)
- Use different quality for WebP and JPEG formats, which is more in line with the browser's default values. (fdefa5d)
Features
- 0.1.1320 Oct 2021
Release notes
Open source →0.1.13 (2021-10-20)
Bug Fixes
- text align position (435e102)
Center
End
Left
Right
Start
Features
@Brooooooklyn
- 0.1.1215 Oct 2021
Release notes
Open source → - 0.1.1130 Sept 2021
- 0.1.1027 Sept 2021
Release notes
Open source →0.1.10 (2021-09-27)
Bug Fixes
- image_filter to Image SamplingOptions conversion (0719022)
Features
- implement filter for Context (6079927)
blur
<p> <img src="https://user-images.githubusercontent.com/3468483/134940852-7e222e85-de30-4fa7-b09a-e6a11ecf7b63.png"> <img src="https://user-images.githubusercontent.com/3468483/134940029-27c800cd-bdb4-4602-9de3-94fe67cc1968.png" /> </p>
brightness
<p> <img src="https://user-images.githubusercontent.com/3468483/134941274-d57c14b7-dd30-4db6-9d61-795592098979.png" /> <img src="https://user-images.githubusercontent.com/3468483/134940100-acce5769-ee29-470f-8df0-430d5e51166c.png"> </p>
contrast
<p> <img src="https://user-images.githubusercontent.com/3468483/134940852-7e222e85-de30-4fa7-b09a-e6a11ecf7b63.png"> <img src="https://user-images.githubusercontent.com/3468483/134941478-197e986e-9d42-47d8-b363-d0b07aae32d2.png"> </p>
drop-shadow
<p> <img src="https://user-images.githubusercontent.com/3468483/134941622-1facaf65-24df-4700-aaf1-440e5d190b71.png"> <img src="https://user-images.githubusercontent.com/3468483/134941666-1bd149ba-8bf9-4f04-a47c-5090aeb719a0.png"> </p>
grayscale
<p> <img src="https://user-images.githubusercontent.com/3468483/134940852-7e222e85-de30-4fa7-b09a-e6a11ecf7b63.png"> <img src="https://user-images.githubusercontent.com/3468483/134941784-84b7bee3-8567-4f2a-bb39-dbb979180364.png"> </p>
hue-rotate
<p> <img src="https://user-images.githubusercontent.com/3468483/134940852-7e222e85-de30-4fa7-b09a-e6a11ecf7b63.png"> <img src="https://user-images.githubusercontent.com/3468483/134941874-dc943248-591b-4611-a988-cc676cb9e827.png"> </p>
invert
<p> <img src="https://user-images.githubusercontent.com/3468483/134942024-8967c64e-f7d6-4987-9b0e-e2a3adea2233.png"> <img src="https://user-images.githubusercontent.com/3468483/134941966-5d7ec24e-0ab7-4624-9a8f-11cec2aa1c3d.png"> </p>
opaticy
<p> <img src="https://user-images.githubusercontent.com/3468483/134942105-3d6b5f44-1b52-4e1e-8fef-bd9c7612d110.png"> <img src="https://user-images.githubusercontent.com/3468483/134942263-76f79efe-1f33-4e80-81fa-2a885b83aa6d.png"> </p>
saturate
<p> <img src="https://user-images.githubusercontent.com/3468483/134942424-52441a90-df75-4d62-81ce-214b504f9db5.png"> <img src="https://user-images.githubusercontent.com/3468483/134942369-d93d1e0f-26e9-45f7-a5f7-e214dc2d7332.png"> </p>
sepia
<p> <img src="https://user-images.githubusercontent.com/3468483/134942513-af5975b0-3b10-4aae-9cd7-f6f240b7cdd5.png"> <img src="https://user-images.githubusercontent.com/3468483/134942583-164295fb-9e9d-45a4-8765-fd0cdd183754.png"> </p>
Additional notes
Open source →Bug Fixes
- image_filter to Image SamplingOptions conversion (0719022)
Features
- implement filter for Context (6079927)
- 0.1.924 Sept 2021
Release notes
Open source →Additional notes
Open source →Bug Fixes
- aarch64-apple-darwin (macOS m1 chips) build [skip skia] (4deee73)
- 0.1.819 Sept 2021
Release notes
Open source →0.1.8 (2021-09-19)
- build: rollback CPU target for x86 platform https://github.com/Brooooooklyn/canvas/pull/359/commits/cc369b835fc6b5ad0668f35ffef253404bf5e709
- 0.1.714 Sept 2021
- 0.1.625 Aug 2021
Release notes
Open source →0.1.6 (2021-08-25)
Bug Fixes
- example to png (90edf49)
- pass the fabric.js visual tests (ec55b3a)
- Fix addColorStop sort issue in CanvasGradient
- Fix Transform::inverse method
- No need map_points in CanvasGradient::get_shader
- CSS Color now allowed to be empty string
- Allow createPattern from another Canvas
- toDataURL should be STANDARD base64
- swap Path in beginPath for better performance
- strip start and end ' from font family (177e4f6)
Features
- 0.1.513 Aug 2021
Release notes
Open source →0.1.5 (2021-08-13)
Bug Fixes
- default value of FilterQuality in SamplingOptions should be high (389aa26)
Features
- add resize SVG demo (bf8388d)
Additional notes
Open source →Bug Fixes
- default value of FilterQuality in SamplingOptions should be high (389aa26)
Features
- add resize SVG demo (bf8388d)
- 0.1.411 Aug 2021
- 0.1.36 Aug 2021
Release notes
Open source → - 0.1.26 Aug 2021
Release notes
Open source →0.1.2 (2021-08-05)
Bug Fixes
- Windows icudtl.data version and path (5c81eb7)
Features
- implement convertSVGTextToPath function (9c7ca98)
Additional notes
Open source →Bug Fixes
- Windows icudtl.data version and path (5c81eb7)
Features
- implement convertSVGTextToPath function (9c7ca98)
- 0.1.12 Aug 2021
Release notes
Open source →Bug Fixes
- use viewbox as svg_container_size if width & height is empty (406a298)
Features
- upgrade to skia/chrome/m93 latest (6ca9526)
Additional notes
Open source →Bug Fixes
- use viewbox as svg_container_size if width & height is empty (406a298)
Features
- upgrade to skia/chrome/m93 latest (6ca9526)
0.1.0 (2021-07-30)
Bug Fixes
- canvas.png() to canvas.encode('png') (b2d5afe)
- multi font families (2e934a5)
- sample image size update (8b0b147)
Features
- 0.1.030 Jul 2021
Release notes
Open source →0.1.0 (2021-07-30)
Bug Fixes
- canvas.png() to canvas.encode('png') (b2d5afe)
- multi font families (2e934a5)
- sample image size update (8b0b147)
Features
- 0.0.1214 Jul 2021
- 0.0.1113 Jul 2021
- 0.0.1012 Jul 2021
- 0.0.911 Jul 2021
- 0.0.823 Jun 2021
Release notes2 sources agree
Open source → - 0.0.721 Jun 2021
Release notes
Open source →Feature
- feat: support jpeg output #258
- feat: support svg source on Image #299
- 0.0.66 May 2021
- 0.0.54 May 2021
- 0.0.419 Apr 2021
- 0.0.327 Mar 2021
- 0.0.227 Mar 2021
Release notes
Open source →Bug Fixes
- bitmap destructor (b138da2)
- build on windows (b731ea8)
- compat with Node.js readonly error messages (c7e1764)
- eslint & vscode config ignore (f7dd018)
- image shadow (8396b93)
- image src getter (336549d)
- setters on readonly properties (adac797)
- sync lock file (340bfb5)
- transform matrix config (9dcddf2)
Features
- add drawImage poc (a5e5ddf)
- add image class poc (11e04a5)
- add image SkData field poc (bb0c108)
- ImageData relates API and tests (24c7990)
- implement image pattern (2efbb18)
- scale and rotate (f6c761f)
- skia m89 (e9c1cc9)
- support all drawImage variants (8d5ded6)
- support context alpha (929bdc0)
- support creating SkImage (3945321)
- support getContextAttributes (4c0586b)
- support isPointInPath (2150788)
- support isPointInStroke (2a14513)
- support naturalWidth/naturalHeight/complete/alt (1bb1042)
- sync skia m89 (9748c44)
- text states and font styles (a175cf7)
Performance Improvements
- disable image data copy (ccc8630)