Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/478.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在不使用html2canvas的情况下将html div转换为画布?_Javascript_Html2canvas - Fatal编程技术网

Javascript 如何在不使用html2canvas的情况下将html div转换为画布?

Javascript 如何在不使用html2canvas的情况下将html div转换为画布?,javascript,html2canvas,Javascript,Html2canvas,我需要将我的html div转换为画布,我现在正在使用html2canvas 但它只捕获窗口的可见部分。我的意思是说,它不是捕获整个潜水有水平滚动 那么,有没有办法用水平卷轴或者html2canvas中的任何建议来捕获整个div呢 这是我使用的代码 var element = document.getElementsByClassName('ppm_portlet_data'); html2canvas(element[0], { width: element[0].offsetWid

我需要将我的html div转换为画布,我现在正在使用html2canvas 但它只捕获窗口的可见部分。我的意思是说,它不是捕获整个潜水有水平滚动

那么,有没有办法用水平卷轴或者html2canvas中的任何建议来捕获整个div呢

这是我使用的代码

var element = document.getElementsByClassName('ppm_portlet_data');

    html2canvas(element[0], { width: element[0].offsetWidth, height: element[0].offsetHeight }).then(function (canvas) {
            console.log(canvas.toDataURL());
            Canvas2Image.saveAsPNG(canvas);
            console.log(canvas.width, canvas.height);
         });

您必须使用
scrollWidth
scrollHeight
并设置
溢出:可见以获取不可见的内容

const div=document.querySelector('content');
div.innerText=div.innerText.split(“”).join(“”);//只是为了内容泛滥
div.addEventListener('单击',事件=>{
html2canvas(div,{width:div.scrollWidth,height:div.scrollHeight}){
document.body.appendChild(画布);
console.log(canvas.width,canvas.height);//输出的宽度大于浏览器宽度
});
});
#内容{
溢出:可见;/*使溢出对捕获可见*/
单词包装:nowrap;
}

Lorem ipsum dolor sit amet,是一位杰出的领导者。埃尼安·康莫多·利古拉·埃吉特·多洛。埃尼安·马萨。在自然社会中,因怀孕而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯。Donec quam felis、ultricies nec、pellentesque eu、pretium quis、sem。这是一个很好的例子。Donec pede justo、fringilla vel、aliquet nec、vulputate eget、arcu。在埃尼姆·胡斯托、朗卡斯·乌特、伊佩拉、维尼那提斯·维塔、胡斯托。猫咪的口头禅是一种很好的口头禅。整数tincidunt。克拉斯·达皮布斯。

您必须使用
滚动宽度
滚动高度
并设置
溢出:可见以获取不可见的内容

const div=document.querySelector('content');
div.innerText=div.innerText.split(“”).join(“”);//只是为了内容泛滥
div.addEventListener('单击',事件=>{
html2canvas(div,{width:div.scrollWidth,height:div.scrollHeight}){
document.body.appendChild(画布);
console.log(canvas.width,canvas.height);//输出的宽度大于浏览器宽度
});
});
#内容{
溢出:可见;/*使溢出对捕获可见*/
单词包装:nowrap;
}

Lorem ipsum dolor sit amet,是一位杰出的领导者。埃尼安·康莫多·利古拉·埃吉特·多洛。埃尼安·马萨。在自然社会中,因怀孕而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯,因饥饿而死亡的蒙特斯。Donec quam felis、ultricies nec、pellentesque eu、pretium quis、sem。这是一个很好的例子。Donec pede justo、fringilla vel、aliquet nec、vulputate eget、arcu。在埃尼姆·胡斯托、朗卡斯·乌特、伊佩拉、维尼那提斯·维塔、胡斯托。猫咪的口头禅是一种很好的口头禅。整数tincidunt。克拉斯·达皮布斯。

请发布您正在处理的代码我已添加请查看请发布您正在处理的代码我已添加请查看画布高度和宽度与滚动高度和宽度相同,但图像正在剪切或捕获,仅显示在窗口屏幕中感谢解决方案,scrollWidth&scrollHeight帮助我解决了我面临的问题。我只想使用vanilla js,将HTML转换为画布,然后将画布转换为图像画布的高度和宽度与滚动高度和宽度相同,但图像正在剪切或捕获,只显示在窗口屏幕中感谢此解决方案,scrollWidth和scrollHeight帮助我解决了我面临的问题。我只想使用vanilla js,将HTML转换为画布,然后将画布转换为图像