主頁 > 知識庫 > html2canvas截圖空白問題的解決

html2canvas截圖空白問題的解決

熱門標簽:電話機器人黑斑馬免費 拓展地圖標注 只辦理400電話 電話機器人電銷系統(tǒng)掙話費 平?jīng)龅貓D標注位置怎么弄 南昌仁和怎么申請開通400電話 高德地圖標注地點糾錯 如何獲取地圖標注客戶 機器人外呼系統(tǒng)存在哪些能力

最近在項目中遇到一個需求,需要提供網(wǎng)頁截圖的功能。百度下發(fā)現(xiàn)html2canvas很好用。那就試試吧。

資源下載地址

插件下載地址:html2canvas下載地址

使用方式

項目使用的react組件開發(fā)方式。參照官方的說明文檔getting-started.md,按照以下步驟進行:

1、使用以下命令安裝

npm install html2canvas --save

2、在文件中引入html2canvas

import html2canvas from 'html2canvas';

3、文件中的使用

html2canvas(document.body).then(function(canvas) {
document.body.appendChild(canvas);
});

遇到的問題

按照這個方式使用,頁面沒有滾動條還行,有滾動條時出現(xiàn)大片空白。

錯誤截圖如下:

解決方案

仔細看了一下configuration.md和網(wǎng)友的分析,最終解決。代碼片段如下

上一張正確的截圖如下:

代碼中的配置項說明

1、截圖產(chǎn)生空白是因為容器高度設(shè)置的問題,設(shè)置windowHeight的高度等于頁面包含滾動條的高度即可獲取滾動條中的內(nèi)容。這一條就可以解決空白的問題。
2、設(shè)置width、height屬性的原因是,我們在頁面中截圖顯示的區(qū)域?qū)挾群透叨仁枪潭ǖ?,就是當前屏幕的可見區(qū)域。
3、設(shè)置x、y坐標的原因是由于頁面在有滾動條的時候,需要指定截圖的起始位置。本項目中x軸方向不存在滾動條,所以設(shè)置為零;y方向有滾動條,所以需要獲取一下當前方向的滾動坐標。
4、一般網(wǎng)頁中會有圖片,圖片中有鏈接地址時,設(shè)置useCORS屬性可保證圖片的加載。

到此這篇關(guān)于html2canvas截圖空白問題的解決的文章就介紹到這了,更多相關(guān)html2canvas截圖空白內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!

標簽:遼源 西藏 漯河 永州 棗莊 池州 青島 新疆

巨人網(wǎng)絡(luò)通訊聲明:本文標題《html2canvas截圖空白問題的解決》,本文關(guān)鍵詞  html2canvas,截圖,空白,問,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《html2canvas截圖空白問題的解決》相關(guān)的同類信息!
  • 本頁收集關(guān)于html2canvas截圖空白問題的解決的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章