html2canvas,這是一個非常著名的從瀏覽器網頁截圖的開源庫,使用很方便,功能也很強大。
使用html2canvashtml2canvas 的使用非常簡單,簡單到只需要傳入一個DOM 元素,然後透過回呼拿到canvas:
在實際使用的時候,有兩個注意點:1.html2canvas 透過解析元素實際的樣式來產生canvas 圖片內容,因此它對元素實際的佈局和視覺顯示有要求。如果要完整截圖,最好將元素從文件流中獨立出來(例如position:absolute)
2.預設產生的canvas 圖片在retina 裝置上顯示很模糊,處理成2 倍圖能解決這個問題:
var w = $(#code).width(); var h = $(#code).height();//要將canvas 的寬高設定成容器寬高的2 倍var canvas = document.createElement(canvas ); canvas.width = w * 2; canvas.height = h * 2; canvas.style.width = w + px; canvas.style.height = h + px; var context = canvas.getContext(2d);//然後將畫布縮放,將圖像放大兩倍畫到畫布上context.scale(2,2); html2canvas(document.querySelector(#code), { canvas : canvas, onrendered: function(canvas) { ... } });使用html2canvas的實際案例1.html程式碼結構
<section class=share_popup id=html2canvas> <p>html2canvas 的使用非常簡單,簡單到只需要傳入一個DOM 元素,然後透過回呼拿到canvas</p> <p><img src=1.jpg>< /p> <p>html2canvas 的使用非常簡單,簡單到只需要傳入一個DOM 元素,然後透過回呼拿到canvas</p> </section>
2.js程式碼結構
var str = $('#html2canvas'); //console.log(str); html2canvas([str.get(0)], { onrendered: function (canvas) { var image = canvas.toDataURL(image/png) ; var pHtml = <img src=+image+ />; $('#html2canvas').html(pHtml); } });總結以上所述是小編給大家介紹的html2canvas 將html程式碼轉為圖片的使用方法,希望對大家有幫助,如果大家有任何疑問請給我留言,小編會及時回覆大家的。在此也非常感謝大家對VeVb武林網站的支持!