狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

【JavaScript】純JS使用html2canvas對網頁指定內容進行截圖使用教程

admin
2023年8月4日 18:47 本文熱度 824

1 簡介

html2canvas屏幕截圖基于 DOM,因此可能不是 100% 準確到真實表示,因為它不會制作實際的屏幕截圖,而是根據頁面上可用的信息構建屏幕截圖。

附件:html2canvas.rar

官網地址

2 安裝

2.1 es6 模塊化引入方式,項目中使用

npm install --save html2canvas// 或yarn add html2canvas123

2.2 js直引方式

<script src="http://html2canvas.hertzen.com/dist/html2canvas.js"></script>1

3 使用

基礎語法

html2canvas(element, options);1
import html2canvas from 'html2canvas';html2canvas(document.body,{}).then(function(canvas) {
    var imgUrl = canvas.toDataURL();
    //imgUrl即為圖片的base64形式});123456

4 屬性

屬性名默認值描述
allowTaintfalse是否允許跨域圖像。會污染畫布,導致無法使用canvas.toDataURL 方法
backgroundColor#ffffff畫布背景色(如果未在DOM中指定)。設置null為透明
canvasnull現有canvas元素用作繪圖的基礎
foreignObjectRenderingfalse如果瀏覽器支持,是否使用ForeignObject渲染
imageTimeout15000加載圖像的超時時間(以毫秒為單位)。設置0為禁用超時。
ignoreElements(element) => false謂詞功能,可從渲染中刪除匹配的元素。
loggingtrue啟用日志以進行調試
onclonenull克隆文檔以進行渲染時調用的回調函數可用于修改將要渲染的內容,而不會影響原始源文檔。
proxynull代理將用于加載跨域圖像的網址。如果保留為空,則不會加載跨域圖像。
removeContainertrue是否清除html2canvas臨時創建的克隆DOM元素
scalewindow.devicePixelRatio用于渲染的比例。默認為瀏覽器設備像素比率。
useCORSfalse是否嘗試使用CORS從服務器加載圖像
widthElement widthcanvas的寬度
heightElement heightcanvas的高度
xElement x-offset裁剪畫布X坐標
yElement y-offset裁剪畫布y坐標
scrollXElement scrollX渲染元素時要使用的x滾動位置(例如,如果Element使用position: fixed)
scrollYElement scrollY呈現元素時要使用的y-scroll位置(例如,如果Element使用position: fixed)
windowWidthWindow.innerWidth渲染時使用的窗口寬度Element,這可能會影響媒體查詢之類的內容
windowHeightWindow.innerHeight渲染時要使用的窗口高度Element,這可能會影響媒體查詢之類的內容

解決圖片清晰度問題

屬性默認值描述
scalewindow.devicePixelRatio用于渲染的比例尺。默認為瀏覽器設備像素比率。

每個設備的window.devicePixelRatio的值不盡一樣,想清晰就調高,想壓縮大小就調低。但調的越高,圖片的生成時間就越長。

html2canvas(document.body,{ scale:1.3 }).then(function(canvas) {
    var imgUrl = canvas.toDataURL();
    //imgUrl即為圖片的base64形式});

該文章在 2023/8/4 18:50:38 編輯過

全部評論1

admin
2023年8月4日 18:49
為確保穩定,可以延遲加載:

setTimeout(function () {

html2canvas($('#img_html')[0]).then(function (canvas) {

var img = new Image();

img.src = canvas.toDataURL('image/jpeg');  //或者:document.getElementById("tmp_pic").src= = canvas.toDataURL('image/jpeg');

})

}, 1000)

因為html是動態生成的,所以最好加上setTimeout延時轉換成canvas,不然可能html的dom元素還沒加載完。


該評論在 2023/8/4 18:49:34 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved