2

当我应用 PDFKIT 包将 HTML 文件转换为 PDF 文件时,我目前面临一个非常奇怪的问题。问题是 HTML 包含一个表格,表格内有一个名为 A1191112 1111 12311469 B 的单元格,如下所示。

html上的单元格

但是当我将它转换成 pdf 时,使用以下选项,

    options = {
    'page-size': 'A1',
    'margin-top': '0.05in',
    'margin-right': '0.05in',
    'margin-bottom': '0.05in',
    'margin-left': '0.05in',
    'encoding': "UTF-8", 
    'custom-header' : [
        ('Accept-Encoding', 'gzip')
    ],
    'cookie': [
        ('cookie-name1', 'cookie-value1'),
        ('cookie-name2', 'cookie-value2'),
    ],
    'no-outline': None
    }

它将术语分为两行,见下文。

PDF 上的单元格

我已经尝试调整页面大小,但它根本没有帮助。如果您有任何建议,将不胜感激。谢谢你。

4

3 回答 3

0

尝试增加单元格宽度,以便下一行的 B 重新出现。那可能行得通!

于 2020-10-17T07:17:22.377 回答
0

尝试在您的 html 文件中的表格之后添加下面的 CSS。

<style>
    table.print-friendly tr td, table.print-friendly tr th {
        page-break-inside: avoid;
    }
</style>

如果这不起作用,您可以尝试减少dpi. options使用以下代码(您可能需要进行试验才能获得完美契合):

options = {
   'dpi': 96,
   # Other options after it
}
于 2020-10-24T03:40:27.127 回答
0

像这样改变文本大小是怎么回事?

带缩放选项:

options = {
    'zoom': 0.9,
}
pdfkit.from_url(url,out_file,options=options)

或 dpi 选项:

   options = {
        'dpi':110,
    }
    pdfkit.from_url(url,out_file,options=options)
于 2020-10-23T23:40:23.837 回答