我的屏幕捕获画布没有在文本框中显示任何文本,也没有在下拉列表中显示所选字段。这是屏幕截图
这是我正在使用的脚本
<script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/1.4.1/html2canvas.min.js"></script>
它应该有我在文本框中插入的数据。如下图所示。这是我的html2canvas的代码
function screenshot() {
html2canvas(document.body, {
scrollY: -window.scrollY,
crossOrigin: 'Anonymous',
allowTaint: true,
foreignObjectRendering: true,
})
.then(canvas => {
imageData = canvas.toDataURL();
console.log('Result from imageData', imageData)
submissionData = prepData(imageData);
JFCustomWidget.sendData(submissionData);
})
.catch(er => console.error(er));
}
1条答案
按热度按时间gdrx4gfi1#
Vuetify的Vue项目也有同样的问题,原来是
foreignObjectRendering: true
的问题,设置为foreignObjectRendering: false
,就会出现文字,至少我是这么解决的。缺点:图像的质量会下降,这取决于你渲染的元素。2例如,阴影看起来很糟糕。