2

我们只需要根据我们的要求使用 wkhtmltopdf 工具的解决方案。我们不需要使用任何其他工具来转换。

我们正在使用 wkhtmltopdf 工具生成 pdf 文件,并且我们使用的是最新版本 0.12.6(带有补丁的 qt)。但生成的 pdf 在页面末尾显示切割字体。半字体显示在页面末尾,另一半字体显示在下一页开始。

请从下面的给定链接中找到 HTML 文件。

https://github.com/vbthakkar9/internal-link/blob/main/TestFile.html

我们正在使用 wkhtmltopdf 命令生成 PDF,如下所示

c:\Program Files\wkhtmltopdf\bin>wkhtmltopdf --print-media-type c:\Users\cpshah\Desktop\TestFile.html c:\Users\cpshah\Desktop\TestFile.pdf

我们已经完成了 Stack Overflow 中建议的所有解决方案,但这些解决方案在我的情况下不起作用。我们还浏览了建议的 SO 链接

避免表格行内的分页符

但在我的情况下它不起作用。

请注意,当我们使用“另存为 Pdf”选项创建 pdf 时(首先在浏览器中打开 HTML,然后单击 CTRL + P,它会打开打印页面工具,然后我们执行“另存为 Pdf”),它将生成完美的副本HTML 即完美的 PDF。

我们已经尝试过使用 wkhtmltopdf 和应用 CSS 的 --print-media-type 选项,如下所示,但不起作用。

1)

@media print {
    table, tr, td, th, tbody, thead, tfoot {
        page-break-inside: avoid !important;
    }
}
@media print {
    table { page-break-inside:auto; page-break-after:auto }
    tr, td, div, span  { page-break-inside:avoid; page-break-after:auto } 
    thead { display:table-header-group }
    tfoot { display:table-footer-group }
}
@media print {
    thead {
        display: table-row-group;
    }
    tr {
        page-break-before: always;
        page-break-after: always;
        page-break-inside: avoid;
    }
    table {
        word-wrap: break-word;
    }
    table td {
        word-break: break-all;
    }
}

不管有没有上面的 CSS,我们都会得到 PDF 字体切割页面,比如

字体切割 - 1

在此处输入图像描述

割台 - 2

在此处输入图像描述

我们希望通过浏览器中的“另存为 Pdf”选项生成 pdf 的精确副本。

请让我们知道如何实现相同的显示以及我们需要更改的内容。先感谢您。

4

0 回答 0