Fork me on GitHub

Why aren't my images rendered?

html2canvas does not get around content policy restrictions set by your browser. Drawing images that reside outside of the origin of the current page taint the canvas that they are drawn upon. If the canvas gets tainted, it cannot be read anymore. As such, html2canvas implements methods to check whether an image would taint the canvas before applying it. If you have set the allowTaint option to false, it will not draw the image.

If you wish to load images that reside outside of your pages origin, you can use a proxy to load the images.

How do I get html2canvas to work in a browser extension?

You shouldn't use html2canvas in a browser extension. Most browsers have native support for capturing screenshots from tabs within extensions. Relevant information for Chrome, Firefox and Opera.

Why isn't SVG images getting rendered?

As with the previous question, SVG images taint the canvas with many browsers regardless of where they are hosted, or even if they are inline.

Why doesn't CSS property X render correctly or only partially?

As each CSS property needs to be manually coded to render correctly, html2canvas will never have full CSS support. The library tries to support the most commonly used CSS properties to the extent that it can. If some CSS property is missing or incomplete and you feel that it should be part of the library, create test cases for it and a new issue for it.