所以基本上我需要使用js或java将我的html代码转换为pdf文件
我一直在尝试几种工具,并发现了一种名为 html2pdf 的工具,它非常适合动态转换 CSS 和 HTML 文件。然而,主要问题是 html2pdf 目前将 HTML 转换为图像,然后将其推送到 PDF 文件。这会导致 PDF 文件无法搜索或复制。由于我们无法改变 html2pdf 将 HTML 转换为图像的事实,因此我正在寻找一种新工具,可以使用 Java 或 JavaScript 将 HTML 和 CSS 转换为 PDF。
window.onload = function () {
document.getElementById("download").addEventListener("click", () => {
const allvoice = document.getElementById("allvoice");
var opt = {
margin : [20,0],
filename: 'myfile.pdf',
image: { type: 'png', quality: 0.98 },
html2canvas: {
scale: 2,
logging: true,
dpi: 192,
letterRendering: true
},
jsPDF: {
unit: 'mm',
format: 'a4',
orientation: 'landscape',
},
pagebreak: { mode: ['avoid-all', 'css', 'legacy'] }
};
html2pdf().from(allvoice).set(opt).toPdf().get('pdf').then(function(pdf) {
var totalPages = pdf.internal.getNumberOfPages();
for (i = 1; i <= totalPages; i++) {
pdf.setPage(i);
pdf.setFontSize(10);
pdf.setTextColor(100);
pdf.text('Page ' + i + ' of ' + totalPages, (pdf.internal.pageSize.getWidth() / 2.3), (pdf.internal.pageSize.getHeight() - 0.8));
}
}).save();
});
}
我正在使用 EKOOPMANS 的 html2pdf
Puppeteer(JS) 可以生成带有可选择和可搜索文本的 PDF。