我已经做了截图按钮,必须对所有的 body 进行截图。
但是在这张截图上谷歌地图并没有显示出来。 我使用 html2canvas 库来做到这一点。 这是代码:
HTML:
<button type="button" class="btn btn-default btn-sm" id = 'screenShotBtn' onclick="takeScreenShot()">
JavaScript :
var takeScreenShot = function() {
var screenshot = {};
html2canvas(document.getElementById('screenAll'), {
onrendered: function (canvas) {
var tempcanvas=document.createElement('canvas');
tempcanvas.width=1350;
tempcanvas.height=700;
var context=tempcanvas.getContext('2d');
context.drawImage(canvas,0,0,1350,700,0,0,1350,700);
var link=document.createElement("a");
link.href=tempcanvas.toDataURL('image/jpg'); //function blocks CORS
link.download = 'screenshot.jpg';
link.click();
}
});
这是我制作屏幕截图时的内容:
你能告诉我有什么问题吗?
最佳答案
我将这些属性添加到代码中并且它有效:
var takeScreenShot = function() {
var screenshot = {};
html2canvas(document.getElementById('map'), {
useCORS: true,
optimized: false,
allowTaint: false,
onrendered: function (canvas) {
var tempcanvas=document.createElement('canvas');
tempcanvas.width=1350;
tempcanvas.height=700;
var context=tempcanvas.getContext('2d');
context.drawImage(canvas,0,0,1350,700,0,0,1350,700);
var link=document.createElement("a");
link.href=tempcanvas.toDataURL('image/jpg'); //function blocks CORS
link.download = 'screenshot.jpg';
link.click();
}
});
}
关于javascript - 使用 html2canvas 时不显示谷歌地图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46281261/