html2canvas-pro

Next generation JavaScript screenshots tool.

build status npm version npm downloads

Getting Started | DeepWiki


## Why html2canvas-pro? html2canvas-pro is a fork of [niklasvh/html2canvas](https://github.com/niklasvh/html2canvas) that includes various fixes and new features. It offers several advantages over the original html2canvas, such as: - support color function ```color()``` (including relative colors) - support color function ```lab()``` - support color function ```lch()``` - support color function ```oklab()``` - support color function ```oklch()``` - Support object-fit of `````` - **Image smoothing control** - Support CSS `image-rendering` property and global `imageSmoothing` option for pixel art and retro graphics - Fixed some [issues](./CHANGELOG.md) If you found this helpful, don't forget to leave a star 🌟. ## Installation ```sh npm install html2canvas-pro pnpm / yarn add html2canvas-pro ``` ## Usage ```javascript import html2canvas from 'html2canvas-pro'; ``` To render an `element` with html2canvas-pro with some (optional) [options](/docs/configuration.md), simply call `html2canvas(element, options);` ### Basic Example ```javascript html2canvas(document.body).then(function(canvas) { document.body.appendChild(canvas); }); ``` ### Controlling Output Dimensions ⚠️ **Important**: By default, the output canvas dimensions are affected by `devicePixelRatio`. ```javascript // If you need exact pixel dimensions (e.g., for a specific file size): html2canvas(element, { width: 1920, height: 1080, scale: 1 // Set scale to 1 for exact dimensions }).then(canvas => { // Canvas will be exactly 1920×1080 pixels const dataURL = canvas.toDataURL('image/png'); }); ``` See the [Configuration Guide](/docs/configuration.md#canvas-dimensions) for more details. ## Contribution If you want to add some features, feel free to submit PR. If you want to become a maintainer on it, please contact me. ## License [MIT](LICENSE).