Convert an iframe to an image
Install the module with: npm install iframe2image
. This is only practical with a tool like browserify.
Download the production version or the development version.
You will also need domvas on your site. iframe2image pre-packaged with domvas can be found in both production version and [development versionmaxWithDomvas.
In your web page:
<script src="dist/iframe2image.min.js"></script>
<script>
iframe2image(myIframe, cb);
</script>
In your code, you can attach iframe2image's methods to any object.
<script>
this.exports = MyGlobal.utils;
</script>
<script src="dist/iframe2image.min.js"></script>
<script>
MyGlobal.utils.iframe2image(myIframe, cb);
</script>
iframe2image is exposed via a single function
/**
* Convert an iframe to an image
* @param {Object|HtmlElement} params If it is an object, properties will be looked up. If it is an iframe, it will be converted into an image.
* @param {HTMLElement} params.iframe Iframe to convert over
* @param {Function} cb Callback to execute once iframe is converted
* @callback arguments[0] Error if any occurred
* @callback arguments[1] Image element of rendered content
*/
Taken from the demo
folder:
// Set up the canvas dimensions
var canvas = document.getElementById('canvas'),
context = canvas.getContext('2d');
canvas.width = 500;
canvas.height = 600;
// Grab the iframe
var inner = document.getElementById('inner');
// Get the image
iframe2image(inner, function (err, img) {
// If there is an error, log it
if (err) { return console.error(err); }
// Otherwise, add the image to the canvas
context.drawImage(img, 0, 0);
});
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using grunt.
Also, please don't edit files in the "dist" subdirectory as they are generated via grunt. You'll find source code in the "lib" subdirectory!
Copyright (c) 2012 Todd Wolfson Licensed under the MIT license.