wkhtmltopdf 工具 - 使用 wkhtmltopdf 最新版本 0.12.6带有修补的 qt在页面末尾剪切文本/字体

问题描述

我们只需要根据我们的要求使用 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 链接

avoid page break inside row of table

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

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

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

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,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

enter image description here

割头 - 2

enter image description here

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

请告诉我们如何实现相同的显示以及我们需要更改的内容。提前致谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)