Commit Graph

615 Commits

Author SHA1 Message Date
James Addison bacfadff96
fix: concatenate contiguous font-family tokens (#2219) 2020-08-09 12:41:53 +08:00
Niklas von Hertzen f23e6f6f26
fix: image loading="lazy" fix #2312 (#2314) 2020-08-08 15:37:34 +08:00
Niklas von Hertzen f139b513c5
fix: #1868 Clone node, Setting className for SVG element raises error (#2079)
* fix: #1868 Clone node, Setting className for SVG element raises error

* fix: svg element type information
2019-11-25 20:55:28 -08:00
Liwen Guo e4d52a1ac6 Fix error in server-side rendering (#2039) 2019-11-25 20:16:07 -08:00
Niklas von Hertzen 3f599103fb
fix: safari pseudo element content parsing (#2018)
* fix: await for fonts to be ready in document clone

* fix: safari pseudo element content parsing

* fix: safari counter-increment / counter-reset
2019-09-27 06:42:13 -07:00
Niklas von Hertzen 076492042a
fix: using existing canvas option (#2017)
* refactor: document cleanup to DocumentCloner

* fix: using existing canvas option

* fix: lint errors

* fix: preview transform origin
2019-09-25 23:34:18 -07:00
Niklas von Hertzen 34b06d6365
fix: correctly respect logging option (#2013)
* test: update to using jest for unit tests

* remove mocha types

* revert to using mocha for testrunner.ts

* add logger unit testing

* fix reftest previewer scaling

* fix LoggerOptions to interface

* fix linting
2019-09-25 03:37:59 -07:00
Niklas von Hertzen 7d3456b78c
fix: null backgroundColor option as transparent (#2012) 2019-09-21 21:45:05 -07:00
Niklas von Hertzen 00555cf1ef
fix: nested z-index ordering (#2011)
* fix zindex bug

* test: add z-index reftest for #1978

* fix: z-index ordering early exit
2019-09-21 21:12:36 -07:00
Niklas von Hertzen eedb81ef9e
fix: correctly render partial borders (fix #1920) (#2010) 2019-09-21 20:33:54 -07:00
RickBetting d4b58960dc Update canvas-renderer.ts (#2004)
* Update canvas-renderer.ts

Fixed an issue were a page wouldn't render.

Line 581 (now 582) threw exception: "Uncaught (in promise) DOMException: Failed to execute 'createPattern' on 'CanvasRenderingContext2D': The image argument is a canvas element with a width or height of 0."

* Update canvas-renderer.ts
2019-09-21 19:33:48 -07:00
David Molnar ee3ca35636 add missing -ms-grid display property to support IE grid layouts (#1926) 2019-09-21 19:32:42 -07:00
Radics Laszlo 81dcf7b6be fix: zero size iframe rendering (#1863) 2019-06-17 21:23:45 -07:00
Valentin 61f4819e02 feat: ignore unsupported image functions (#1873) 2019-06-17 21:22:05 -07:00
Niklas von Hertzen cbaecdca28
fix: stack exceeding for css tokenizer (#1862)
* fix: stack exceeding for css tokenizer

* fix: token string recursion
2019-05-29 22:26:51 -07:00
Niklas von Hertzen cae44a6f0a
fix: typescript options type definition (#1861) 2019-05-29 21:11:50 -07:00
Niklas von Hertzen 409674fba6
fix: multi token overflow #1850 (#1851) 2019-05-26 14:08:56 -07:00
Niklas von Hertzen 5f31b74177
feat: box-shadow rendering (#1848)
* feat: box-shadow rendering

* test: add box-shadow test
2019-05-25 21:53:50 -07:00
Niklas von Hertzen 522a443055
Typescript conversion (#1828)
* initial typescript conversion

* test: update overflow+transform ref test

* fix: correctly render pseudo element content

* fix: testrunner build

* fix: karma test urls

* test: update underline tests with <u> elements

* test: update to es6-promise polyfill

* test: remove watch from server

* test: remove flow

* format: update prettier for typescript

* test: update eslint to use typescript parser

* test: update linear gradient reftest

* test: update test runner

* test: update testrunner promise polyfill

* fix: handle display: -webkit-flex correctly (fix #1817)

* fix: correctly render gradients with clip & repeat (fix #1773)

* fix: webkit-gradient function support

* fix: implement radial gradients

* fix: text-decoration rendering

* fix: missing scroll positions for elements

* ci: fix ios 11 tests

* fix: ie logging

* ci: improve device availability logging

* fix: lint errors

* ci: update to ios 12

* fix: check for console availability

* ci: fix build dependency

* test: update text reftests

* fix: window reference for unit tests

* feat: add hsl/hsla color support

* fix: render options

* fix: CSSKeyframesRule cssText Permission Denied on Internet Explorer 11 (#1830)

* fix: option lint

* fix: list type rendering

* test: fix platform import

* fix: ie css parsing for numbers

* ci: add minified build

* fix: form element rendering

* fix: iframe rendering

* fix: re-introduce experimental foreignobject renderer

* fix: text-shadow rendering

* feat: improve logging

* fix: unit test logging

* fix: cleanup resources

* test: update overflow scrolling to work with ie

* build: update build to include typings

* fix: do not parse select element children

* test: fix onclone test to work with older IEs

* test: reduce reftest canvas sizes

* test: remove dynamic setUp from list tests

* test: update linear-gradient tests

* build: remove old source files

* build: update docs dependencies

* build: fix typescript definition path

* ci: include test.js on docs website
2019-05-25 15:54:41 -07:00
Niklas von Hertzen 4e4a231683
fix: safari data url taints (#1797) 2019-04-09 20:32:22 -07:00
Niklas von Hertzen 7775d3c0d6
docs: remove invalid `async` option from docs (fix #1769) (#1796) 2019-04-07 22:16:29 -07:00
Niklas von Hertzen 397595afb5
fix: don't apply text shadows on elements (#1795)
* Fix for Issue-1638 (https://github.com/niklasvh/html2canvas/issues/1638)
Resolution: Clearing the Shadow Properties after they are consumed
2019-04-07 21:36:14 -07:00
Justin Meyer 7027900f49 fix: context scale for high resolution displays with foreignobjectrendering (#1782) 2019-04-07 16:49:29 -07:00
Niklas von Hertzen 44f3d79f68
build: update webpack and babel (#1793) 2019-04-07 14:24:17 -07:00
Paul Thompson 2c018d1987 fix: wrap .sheet.cssRules access in try...catch. (#1693) 2019-04-07 12:17:43 -07:00
earshinov 5cbe5db351 fix: prevent unhandled promise rejections for hidden frames (#1762) 2019-04-06 23:44:01 -07:00
ahebrank 349bbf137a fix: enforce colorstop min 0 (#1743) 2019-04-06 23:24:07 -07:00
Jihwan Oh 4e02a4c7a1 Remove unintended space (#1501) 2018-07-06 23:02:50 +08:00
Niklas von Hertzen 83e7eaa795 Fix type import 2018-07-06 22:28:48 +08:00
Niklas von Hertzen a3e25d71cb Fix white space appearing on element rendering (Fix #1438) 2018-04-05 20:41:16 +08:00
Niklas von Hertzen 9da0f60551 Reset canvas transform on finish (Fix #1494) 2018-04-05 19:42:32 +08:00
Simon 0e273418c7 IE11 Member not found fix Wrap accesing the cssText property in a try...catch (#1415)
* https://github.com/niklasvh/html2canvas/issues/1374 - Wrap accesing the cssText property in a try...catch
2018-04-01 16:49:23 +08:00
Niklas von Hertzen e6bbc1abb5
Merge pull request #1487 from mapleeit/support-blob-image-resources
support blob image resources in non-foreignObjectRendering mode
2018-04-01 16:43:40 +08:00
maplemiao 13bbc90048 support blob image resources in non-foreignObjectRendering mode 2018-03-30 16:37:18 +08:00
Niklas von Hertzen 01e4920876 Fix window reference for node tests 2018-02-15 22:19:25 +08:00
Niklas von Hertzen da2794f7f7 Fix version logging (Fix #1421) 2018-02-15 22:07:40 +08:00
Niklas von Hertzen 9fb9898894 Re-introduce onclone option (Fix #1434) 2018-02-15 21:40:48 +08:00
Niklas von Hertzen fad4f837c9 Add ignoreElements predicate function option 2018-02-15 21:26:09 +08:00
Niklas von Hertzen e6c44afca1
Merge pull request #1417 from eKoopmans/bugfix/underlines
Revert "Fix underlines, relative to 'bottom' baseline"
2018-02-15 21:00:48 +08:00
Erik Koopmans d023de0b99 Revert "Fix underlines, relative to 'bottom' baseline"
This reverts commit 0c8d38d9c0.
2018-01-26 18:10:15 +11:00
Niklas von Hertzen 4c14894a0a Correctly clone dynami CSSStyleSheets (Fix #1370) 2018-01-07 20:13:26 +08:00
Niklas von Hertzen 474b5e81a7 Refactor border-radius update 2018-01-07 19:19:55 +08:00
Jasper Krielaars b97972eeb6 updated calculation of border-radius 2018-01-04 08:59:38 +01:00
Niklas von Hertzen ae019f174c Use correct doctype in cloned Document (Fix #1298) 2018-01-02 20:06:24 +08:00
Niklas von Hertzen ea6062c85b Fix individual border rendering (Fix #1349) 2018-01-02 20:04:28 +08:00
Niklas von Hertzen 79e1c857e6 Fix form input text positions (Fix #1338 #1347) 2017-12-31 19:38:31 +08:00
Niklas von Hertzen 1870433307 Implement unicode line-breaking 2017-12-31 00:14:21 +08:00
Niklas von Hertzen 0aeb54ca2e Remove console.logs 2017-12-28 13:58:42 +08:00
Niklas von Hertzen eec84fa39e Fix list-style-type: none (Fix #1340) 2017-12-28 13:52:05 +08:00
Niklas von Hertzen 9046e0d554 Update to use list style parser from ListItem 2017-12-24 17:08:54 +08:00
Niklas von Hertzen afa5d7cb8e Merge branch 'feature/HTC-0010_PseudoContent' of git://github.com/vnmc/html2canvas into vnmc-feature/HTC-0010_PseudoContent 2017-12-24 16:30:13 +08:00
Niklas von Hertzen baaf9b0701 Merge branch 'bugfix/underlines' of git://github.com/eKoopmans/html2canvas into eKoopmans-bugfix/underlines 2017-12-21 23:45:06 +08:00
Niklas von Hertzen a570f5df74 Update useCORS documentation (Fix #1323) 2017-12-21 23:41:01 +08:00
Niklas von Hertzen 38749bc4b6 Fix canvas rendering on Chrome 2017-12-21 23:31:55 +08:00
Niklas von Hertzen e1d6b4c76f Fix overflow: auto 2017-12-21 23:29:59 +08:00
Niklas von Hertzen 31f2c22477 Fix list style issues 2017-12-21 23:22:09 +08:00
Matthias Christen 6d0cd2d226 fixed flow problems in PseudoNodeContent.js 2017-12-15 23:46:26 +01:00
Matthias Christen 7335984ab7 added support for rendering ordered lists and list-style 2017-12-15 22:55:27 +01:00
Matthias Christen 78c3c7fc71 improved support of 'content' for pseudo elements (multiple components, counters, attr, quotes) 2017-12-15 12:40:04 +01:00
Niklas von Hertzen 0b9f34a5bf Fix formatting 2017-12-12 22:39:27 +08:00
Niklas von Hertzen 09bab18b48 Fix flow error 2017-12-12 22:32:12 +08:00
Niklas von Hertzen ab966ff311 Fix formatting 2017-12-12 22:23:48 +08:00
Niklas von Hertzen 7bb4a6f08f Fix compiled code using symbols 2017-12-12 22:18:15 +08:00
Niklas von Hertzen f50da9718f Fix NaN color stop in IE 2017-12-12 22:08:46 +08:00
Niklas von Hertzen 3965a0fd40 Fix backgroundColor option documentation (Fix #1164) 2017-12-12 21:23:53 +08:00
Niklas von Hertzen 77d258f1d8 Fix rendering with multiple fonts defined (Fix #796) 2017-12-12 21:08:19 +08:00
Niklas von Hertzen cacb9f64e4 Radial gradient support 2017-12-12 20:57:48 +08:00
Matthias Christen 8ef3861a5c added support for radial gradients 2017-12-12 20:16:04 +08:00
Niklas von Hertzen 50608e9cd4 Fix external SVG loading with proxies (#802) 2017-12-11 20:51:39 +08:00
Niklas von Hertzen d87fef11a4 Fix logging option (#1302) 2017-12-11 20:23:43 +08:00
Niklas von Hertzen 250208dc99 Add support for rendering webgl canvas content (#646) 2017-12-11 20:17:20 +08:00
Matthias Christen d1e870de88 added support for gradient background size and fixed linear gradient angle when vendor prefix is used 2017-12-09 23:07:27 +01:00
Niklas von Hertzen d83bc0247a Disable `foreignObjectRendering` by default (#1295) 2017-12-09 17:51:28 +08:00
Niklas von Hertzen b239937e00 Refactor Font.js 2017-12-09 17:46:32 +08:00
Niklas von Hertzen a6a3c1bd0f Fix tests and refactor background calculations out from Renderer 2017-12-09 17:45:58 +08:00
Matthias Christen 850338a76a added support for background-origin: content-box, fixed background-origin related background sizes 2017-12-09 00:12:29 +01:00
Niklas von Hertzen ef5c59e26d Fix scroll positions for CanvasRenderer (Fix #1259) 2017-12-07 16:36:09 +08:00
Niklas von Hertzen 8b653f89bc Prevent generated iframe from getting re-rendered 2017-12-07 16:16:22 +08:00
Niklas von Hertzen 9db8580b97 Fix data-html2canvas-ignore attribute (Fix #1253) 2017-12-07 16:12:39 +08:00
Niklas von Hertzen b8178e92b4 Add deprecation warning for onrendered (Fix #1290) 2017-12-07 15:47:42 +08:00
Niklas von Hertzen 166cbba7c2 Fix decimal letter spacing values (#1293) 2017-12-07 15:20:24 +08:00
Erik Koopmans 0c8d38d9c0 Fix underlines, relative to 'bottom' baseline 2017-12-06 23:49:11 +11:00
Niklas von Hertzen 0e8a924ea2 Fix formatting 2017-12-03 17:30:52 +08:00
Niklas von Hertzen 7e0b2b5201 Add npm and minified builds 2017-12-03 17:07:10 +08:00
Niklas von Hertzen 9445b0b598 Inline fonts for ForeignObjectRenderer 2017-10-18 20:34:17 +08:00
Niklas von Hertzen f16d581f04 Add foreignObjectRendering option 2017-09-28 19:46:00 +08:00
Niklas von Hertzen 53dd885279 Implementing cropping and dimension options for rendering (Fix #1230) 2017-09-27 22:14:50 +08:00
Niklas von Hertzen ae47d901a1 Add no console.log lint rule 2017-09-25 23:01:59 +08:00
Niklas von Hertzen 929b9de6e0 Implement proxied cross-origin iframe rendering 2017-09-25 22:53:09 +08:00
Niklas von Hertzen 57dc7137b2 Fix wrong context for cloned element instanceof check 2017-09-24 15:26:37 +08:00
Niklas von Hertzen 90a8422938 Implement Iframe rendering 2017-09-11 22:36:23 +08:00
Niklas von Hertzen aa47a3a3a6 Add support for loading cross origin images using proxy 2017-09-04 23:36:19 +08:00
Niklas von Hertzen 1a53643457 Improve logging 2017-09-03 21:24:17 +08:00
Niklas von Hertzen 906a66eec7 Use crossOrigin images when useCORS option set 2017-09-03 21:24:06 +08:00
Niklas von Hertzen c013e49192 Only use foreignObject rendering if browser is capable of rendering images 2017-09-03 18:20:12 +08:00
Niklas von Hertzen 6d9639d0af Use prefixed transform values 2017-08-30 22:20:55 +08:00
Niklas von Hertzen 23b6f29ecf Capture screenshots while running karma tests 2017-08-30 21:31:51 +08:00
Niklas von Hertzen a41ba8852f Set default config as empty object (Fix #1195) 2017-08-30 20:59:18 +08:00
Niklas von Hertzen b75fd70042 Add screenshot collecting server 2017-08-28 21:27:39 +08:00
Niklas von Hertzen 5dbb197a82 Remove redundant style nodes from clone 2017-08-18 22:22:24 +08:00