【发布时间】:2021-11-07 00:14:44
【问题描述】:
我有两个功能。
function test() {
// Get the element.
var element = document.getElementById('container');
// Generate the PDF.
html2pdf().from(element).set({
margin: 1,
foreignObjectRendering: true,
filename: 'test.pdf',
html2canvas: { scale: 2 },
jsPDF: {orientation: 'portrait', unit: 'in', format: 'letter', compressPDF: true}
}).save();
}
$(function() {
$("#btnSave").click(function() {
html2canvas($("#container"), {
onrendered: function(canvas) {
theCanvas = canvas;
document.body.appendChild(canvas);
// Convert and download as image
Canvas2Image.saveAsPNG(canvas);
$("#img-out").append(canvas);
// Clean up
//document.body.removeChild(canvas);
}
});
});
});
还有一个 div
<div id="container" style="width: 1000px; height: 500px; background-color: #1b5c72;">
<div onclick="doSomething(event, this); changeColor(event, this)" class="magnet" style="display: inline-block;">
<object class="123" style="pointer-events: none" width="200"
height="300"
type="image/svg+xml"
data="images/tiles/a4-vertical.svg">
</object>
</div>
<div style="background-color: red; width: 100px; height: 100px;"></div>
</div>
我无法在第二个函数中将 div 转换为画布,也无法在第一个函数中制作好的 pdf。不要出现在画布和pdf中。我只看到空的主 div 和没有 svg 的小红色 div。
html2canvas 不适用于<object>?
【问题讨论】:
标签: javascript html html2canvas