我想将具有特定自定义尺寸的 html 页面打印到 pdf 文件中:
这里是CSS部分:
@media print {
@page {
size: 210mm 105mm;
margins: 10mm 10mm 10mm 10mm;
}
}
这里是js代码:
function printLogbook() {
const logbook = document.getElementById("table");
logbook.focus();
logbook.contentWindow.print();
}
您尝试触发 iframe 的打印命令的方式存在问题
(logbook.contentWindow.print())
,这可能无法按预期工作
使用 logbook.contentWindow.print()
代替 window.print()
来触发整个页面的打印对话框
function printLogbook() {
window.print(); // Triggers the print dialog
}
如果需要导出为自定义页面尺寸的PDF,可以使用jsPDF库:
function printToPDF() {
const doc = new jsPDF({
unit: 'mm',
format: [210, 105], // Custom size
});
const logbook = document.getElementById("table");
doc.html(logbook, {
callback: function (doc) {
doc.save('logbook.pdf');
},
x: 10,
y: 10
});