1. 程式人生 > >js擷取html元素生成圖片

js擷取html元素生成圖片

使用html2canvas將html元素擷取到canvas顯示,再由canvas轉換為圖片。注意:要擷取的元素裡面不能使用跨域名的圖片連結,否則會汙染canvas。
html2canvas的github連結:https://github.com/niklasvh/html2canvas

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <style>
        .my-div
{ background-color: antiquewhite; }
</style> <script type="application/javascript" src="html2canvas.js"></script> </head> <body> <div class="my-div"> this is source <img src="girls%20day.jpg"/> </div> <div class="content"
>
<span>next node is a img tag</span> <img id="img"/> </div> <script> //要轉換為圖片的dom物件 var element = document.querySelector('.my-div'); //要顯示圖片的img標籤 var image = document.querySelector('#img'); //呼叫html2image方法 html2image(element,image); /** * create by lrj * @param source 要轉換為圖片的dom物件 * @param image 要顯示圖片的img標籤 */
function html2image(source,image) { html2canvas(source).then(function(canvas) { var imageData = canvas.toDataURL(1); image.src = imageData; }); }
</script> </body> </html>