簡體   English   中英

如何使用HTML2Canvas獲取完整的HTML頁面的屏幕截圖

[英]How to get screenshot of complete HTML page using HTML2Canvas

我正在使用HTML2Canvas來獲取完整HTML頁面的圖像。我試圖通過單擊按鈕將該圖像保存在PPT中。 我能夠將圖像保存在PPT中。 但是保存的圖像內容越來越重疊,我在這里使用的警報大約需要1分鍾才能顯示。 當我進行調試時,我才知道問題出在HTML2Canvas。 我在網頁中使用了許多第三方圖表,例如Google圖表。 能否請您建議我HTML2Canvas的其他替代方法,因為我看到當我們使用跨域內容時HTML2Canvas中幾乎沒有限制。

$('#PPTExport').click(function(e) {


var canvas = document.getElementById('canvas');
var target = $('#loadImageHeader');
        html2canvas(target, {
        onrendered: function(canvas) {

        var data1 = canvas.toDataURL("image/jpeg").replace("image/jpeg", "image/octet-stream");

        alert(data1);




$.ajax({ 
url: "savechart", 
data:{
image1:data1
      }, 

type: 'POST', 
success: function (data) {
if(data=="success")
{

 $("#formid1" ).attr('action','savechartDownload');
 $( "#formid1" ).submit();
}
                           } 
         });

}
});
                                                                    });

我有解決此問題的方法。 您可以嘗試一下。

 html2canvas([document.body], {
        useCORS: true,
        proxy: "Server",
        onrendered : function(canvas) {                               
             var myImage = canvas.toDataURL("image/png");
             window.open(myImage);
        }
});

服務器是node.js的服務器URL或您可以編寫的任何語言。

示例Node.js: https : //github.com/niklasvh/html2canvas-proxy-nodejs

在此處了解更多信息: 無法使用html2canvas捕獲Google地圖

此處: 跨域資源共享策略拒絕跨域圖像加載

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM