unstale

npm / html2canvas-pro

html2canvas-pro

What changed in html2canvas-pro 1 to 2, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-18.

2 breaking13 new APIs and options5 performance17 behavior and defaults59 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli on npm

html2canvas-pro 281 changes

Breaking changes 2

  • Rendering now composites full standard filter chains.

    2.5.2release notes

  • Enhances object-fit calculations, which can affect rendered output.

    2.1.0release notes

New APIs and options 11

  • Adds device-pixel text-clip surfaces with stroke and shadow support.

    2.5.1release notes

  • Adds support for conic gradients.

    2.5.0release notes

  • Adds support for mask-image.

    2.5.0release notes

  • Adds support for repeating radial gradients.

    2.5.0release notes

  • Adds a white-space property descriptor, allowing the property to affect rendering.

    2.3.8release notes

  • Adds a skipCache flag for image descriptors so side effects run on every render and caching behavior is handled properly.

    2.2.3release notes

  • Adds CSS property descriptors and rendering support.

    2.2.0release notes

  • Adds an onError callback to Options and ContextOptions, wired to resource load failures.

    2.2.0release notes

  • Adds an onProgress callback.

    2.2.0release notes

  • Adds support for the mix-blend-mode CSS property when rendering.

    2.1.0release notes

  • Adds support for controlling image smoothing.

    2.0.1release notes

Performance 5

  • Uses native layer filters with a verified SVG fallback.

    2.4.4release notes

  • Adds CSS parse cache LRU eviction and background pattern caching.

    2.2.0release notes

  • Adds an LRU pattern cache for linear-gradient backgrounds.

    2.2.0release notes

  • Defers CSS parsing as part of performance improvements.

    2.1.0release notes

  • Skips pseudo-element getComputedStyle calls for void and replaced elements.

    2.1.0release notes

Behavior and default changes 15

  • Adds support for rendering repeating conic gradients.

    2.5.1release notes

  • Adds support for backdrop-filter.

    2.5.0release notes

  • Adds support for background-clip: text using TextClipRenderer.

    2.5.0release notes

  • Adds support for border-image outset.

    2.5.0release notes

  • Adds support for box-reflect.

    2.5.0release notes

  • Adds support for image-set.

    2.5.0release notes

  • Adds support for text-emphasis.

    2.5.0release notes

  • Enables CORS loading for cross-origin images in the Cache class.

    2.3.8release notes

  • Implements text wrapping for textareas.

    2.3.8release notes

  • Custom element clones now preserve shadow roots and attributes.

    2.3.6release notes

  • Improves node parsing logic, which may affect how content is handled.

    2.3.5release notes

  • Adds support for rendering text with background-clip: text.

    2.3.3release notes

  • Length-percentage handling is enhanced, which may affect how rendered content using these values is handled.

    2.3.0release notes

  • Implements comprehensive drop-shadow parsing in FilterEffect.

    2.2.4release notes

  • Text rendering and parsing now support writing modes.

    2.0.4release notes

Fixes and other changes 48

  • Border rendering is corrected.

    2.5.2release notes

  • Decoration colour rendering is corrected.

    2.5.2release notes

  • The hsl() colour parser is repaired.

    2.5.2release notes

  • The scale-down object-fit rendering is corrected.

    2.5.2release notes

  • Outer SVG transforms are normalized like HTML container transforms.

    2.5.2release notes

  • Rendering fixes radial gradients.

    2.5.2release notes

  • Uses the browser's default accent blue for auto accent-color and input accent rendering.

    2.5.1release notes

  • Appends ::after pseudo content after an element's children.

    2.5.1release notes

  • Scales canvas shadow and filter metrics to device space.

    2.5.1release notes

  • Clamps quote depth when close-quotes are unbalanced.

    2.5.1release notes

  • Corrects rendering of isolated blend groups.

    2.5.1release notes

  • Draws list markers as geometric shapes.

    2.5.1release notes

  • Skips unsupported image functions in list-style-image.

    2.5.1release notes

  • Contains list-style images within the 1em marker box.

    2.5.1release notes

  • Corrects coordinate math when rendering mask, repeating and radial gradients.

    2.5.1release notes

  • Keeps the surface-root overflow clip inside composited surfaces.

    2.5.1release notes

  • Applies -webkit-line-clamp to flow-root containers.

    2.5.1release notes

  • Corrects the coordinate space used for zoom.

    2.5.1release notes

  • Fixes rendering background-clip: text when text has multiple fragments.

    2.5.0release notes

  • Adds support for border-image width.

    2.5.0release notes

  • Corrected box-shadow scaling, clipping, and inset rendering.

    2.4.5release notes

  • Box shadows are preserved through effective canvas transforms.

    2.4.5release notes

  • CSS transforms are kept when getTransform is unavailable.

    2.4.5release notes

  • Box shadows are rasterized within bounded filter surfaces.

    2.4.4release notes

  • CJK text with letter-spacing stays on the alphabetic baseline.

    2.4.4release notes

  • Supported filters and opacity are composited on layer surfaces.

    2.4.4release notes

  • Shadow mask displacement is bounded inside filter surfaces.

    2.4.4release notes

  • Preserves quoted font family names during serialization.

    2.4.3release notes

  • Removes horizontal seams on radial gradients whose vertical radius exceeds the horizontal one.

    2.4.2release notes

  • Prevents SVG offsets from being serialized.

    2.4.1release notes

  • Preserves constrained input text during canvas rendering.

    2.4.0release notes

  • Restores scroll after onclone runs.

    2.4.0release notes

  • Adjusts mask rectangle anchoring to prevent inverted inset box-shadow rendering.

    2.3.9release notes

  • Fieldset bounds are adjusted to center the legend vertically in ElementContainer.

    2.3.7release notes

  • Fieldset border rendering now handles legend bounds.

    2.3.6release notes

  • Adds handling for whitespace-only computed CSS values.

    2.3.4release notes

  • Fixes webfont text baseline shifts that pushed labels out of their box.

    2.3.2release notes

  • Renders drop-shadow() via ctx.shadow instead of stripping it.

    2.2.2release notes

  • Strip drop-shadow() from ctx.filter to avoid canvas taint.

    2.2.1release notes

  • Forward maxCacheSize to Cache so the configured cache limit is applied.

    2.2.1release notes

  • Extends the scroll position fallback to desktop Safari.

    2.1.0release notes

  • Range offsets remain aligned after a transform.

    2.0.4release notes

  • Corrects the order of adoptNode() during document cloning.

    2.0.3release notes

  • Resolves background images using the source document's baseURI.

    2.0.3release notes

  • Fixes the baseline offset for CJK text.

    2.0.1release notes

  • Adds support for the clip-path CSS property with various shape functions.

    2.0.1release notes

  • Fixes letter-spacing rendering.

    2.0.1release notes

  • Replaces transforms with identity values during DOM normalization.

    2.0.1release notes

html2canvas-pro 115 changes

New APIs and options 2

  • Adds iframeContainer; the notes do not specify further details.

    1.6.5release notes

  • Supports calc() in background-position values.

    1.6.2release notes

Behavior and default changes 2

Fixes and other changes 11

  • Fixed previews breaking after the first shadow-root.

    1.6.7release notes

  • Fixes lack of support for line-clamp.

    1.6.6release notes

  • Adds support for rotate.

    1.6.5release notes

  • Fixes lack of support for radial gradients.

    1.6.3release notes

  • Fixes rendering text inside an inline-flex container when the text is its only child.

    1.6.2release notes

  • Fixes oklch colors sometimes being downgraded to default black when used with Tailwind.

    1.6.2release notes

  • Fixes incorrect rendering of placeholder padding.

    1.6.2release notes

  • Fixes rendering content inside <slot>.

    1.6.2release notes

  • Fixes text rendering lower than in the browser.

    1.6.2release notes

  • Fixes webkit-text-stroke being offset below when paint-order is stroke fill.

    1.6.2release notes

  • Fixes handling of custom properties in Chrome 138 by ignoring them.

    1.5.13release notes