【发布时间】:2021-12-01 01:39:33
【问题描述】:
我有两张尺寸为 7cm×15cm 的表格,我想使用浏览器的打印工具中的“保存为 PDF”选项将它们导出为 A4 纵向纸大小的 pdf 文件。
理想情况下,我想在 A4 纸上将两个表格垂直居中。但如果这不可能,我希望它们位于页面中的同一位置。
目前,由于某种原因,这两个表格并未按我希望的那样定位在页面上的确切位置(见下图)。
html代码如下:
<body>
<!-- 1st table: -->
<table>
<tr> <td>content of the first table</td>
<!-- some other tr's and td's -->
</tr>
</table>
<!-- 2nd table: -->
<table>
<tr> <td>content of the second table</td>
<!-- some other tr's and td's -->
</tr>
</table>
</body>
连同以下css规则:
table {width:7cm; height:15cm; border: 1px solid;
page-break-after: always;
margin: auto;
}
@media print {
@page { size: A4 portrait; }
}
page-break-after: always; 规则指示浏览器在表格后插入分页符;
margin: auto; 规则水平对齐画布上的表格。
我需要将两张表格打印在同一张纸上,进行双面打印,以便将表格打印在彼此的后面。
我现在拥有的:
任何帮助将不胜感激!
【问题讨论】:
-
打印 HTML 数据表格的最有效方法是使用可以从表格创建 PDF 文档的 JavaScript 库。不要依赖浏览器的“打印到 PDF”功能,因为要生成格式良好的 PDF 并不容易。
-
@daddygames 我不想使用 javascript。
-
祝你好运。
-
@daddygames 又想了想,能否请您提一下库名称?我对js不是很熟悉,但我最好看看它。
-
我已经有一段时间没有使用 JS 工具来完成这项任务了,因为我通常使用 API 服务器来代替。我最近对这种特定类型的任务的经验是使用Datatables JS。快速搜索似乎指向jsPDF 也是一个流行的库,它可以为您提供除 html 表格之外的更多选择。