3

html2canvas を使用して Google マップの画像をキャプチャしようとしていました。Chrome でキャプチャされているものは、Internet Explorer ではキャプチャできないため問題ありませんでした。それを手伝ってくれる人に感謝します。私は何日も解決してきましたが、

以下はコードです:

function magic() {
    var target = $('#map');

    // if this is ie or other browser
    if (isIE()) {
        // is IE
        html2canvas(target, {
            useCORS: true,
            logging: true, 
            onrendered: function(canvas) {
                var data = canvas.toDataURL();
                $("#img").attr("src", data);

                var justTheData = data.replace(/^data:image\/(png|jpg);base64,/, "");//Removes everything up to ...'base64,'
                document.getElementById("myImage").src="data:image/jpeg;base64," + justTheData;


            }
        });

    } else {
        // Other browser
        html2canvas(target, {
            useCORS: true,
            logging: true, 
            onrendered: function(canvas) {
                var data = canvas.toDataURL();
                $("#img").attr("src", data);
                window.open(data);
            }
        });
    }
}

html コード:

<img id="myImage" src="">

Internet Explorer のロギング エラー

html2canvas: Preload: Finding images 
 html2canvas: Preload: Done. 
 html2canvas: start: images: 1 / 1 (failed: 0) 
 Finished loading images: # 1 (failed: 0) 

Chrome のロギング エラー

Finished loading images: # 25 (failed: 0)
4

0 に答える 0