要实现将 HTML 转换为 PDF 并下载需要使用 jsPDF 和 html2canvas 库。 以下是一个示例代码,它将 HTML 元素(id为content)转换为 PDF 并下载:
<!-- html -->
<div id="content">
<h1>Hello, World!</h1>
<p>This is a test page.</p>
<ul>
<li>Item 1</li>
<li>Item 2</li>
<li>Item 3</li>
</ul>
</div>
<button onclick="generatePDF()">Download PDF</button>
// javascript
function generatePDF() {
// 获取要转换为 PDF 的 HTML 元素
const element = document.getElementById("content");
// 使用html2canvas将 HTML 元素转换为 Canvas
html2canvas(element).then(canvas => {
// 获取Canvas的图像数据
const imgData = canvas.toDataURL('image/png');
// 创建一个新的 jsPDF 实例
const pdf = new jsPDF();
// 将Canvas转换为PDF
pdf.addImage(imgData, 'PNG', 0, 0);
// 下载PDF文件
pdf.save("test.pdf");
});
}
以上代码会在按钮被点击时触发,将 HTML 元素转换为 Canvas,然后将 Canvas 转换为 PDF 并下载。