php - 防止 mPDF 中的正文重叠页脚

标签 php mpdf

我正在使用 mPDF 库生成 PDF,我的页眉和页脚的大小取决于几个参数。

静态解决方案是设置页脚边距,这将解决重叠问题 - 但由于页脚大小可能不同,这不是我满意的解决方案。有没有办法获取页脚尺寸并相应地应用边距?

最佳答案

问题出在mpdf的文档上。我认为 margin_footer 和 margin_header 是文档正文和这些之间的边距。相反,margin_footer 和 margin_header 是文档边距,就像人们认为的 margin_top 和 margin_bottom 一样。

因此,更改底部和顶部边距将决定文档正文的起始位置。更改页眉/页脚边距将决定打印边距。

希望对您有所帮助!

更新的答案

我猜 mPDF 文档对于构造函数调用有点偏离。 margin_top/bottom 参数实际上是内容边距,不适用于 margin_header/footer 参数。 (如果我没记错的话)。 margin_top/bottom 是距文档顶部的绝对边距,应包括页眉/页脚的高度。

这是处理边距的正确方法:

/**
 * Create a new PDF document
 *
 * @param string $mode
 * @param string $format
 * @param int $font_size
 * @param string $font
 * @param int $margin_left
 * @param int $margin_right
 * @param int $margin_top (Margin between content and header, not to be mixed with margin_header - which is document margin)
 * @param int $margin_bottom (Margin between content and footer, not to be mixed with margin_footer - which is document margin)
 * @param int $margin_header
 * @param int $margin_footer
 * @param string $orientation (P, L)
 */
new mPDF($mode, $format, $font_size, $font, $margin_left, $margin_right, $margin_top, $margin_bottom, $margin_header, $margin_footer, $orientation);

关于php - 防止 mPDF 中的正文重叠页脚,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10931948/

相关文章:

php - 如何使用 mPDF 库在 PDF 中并排保存两个元素?

mpdf - 如何使 mPDF 6.1 与 PHP 7.1.5 一起工作

php - 将自定义供应商库添加到 Symfony2 自动加载

php - PHP 的 opcache 何时重新解析文件?

php - 如何在 TCPDF 中设置标题背景颜色?

css - 指定表中 td 的高度属性

php - mpdf隐藏元素

php - 获取 php 填充的选择选项的 ID

PHP:从 xml 生成数组时存在非法偏移类型

javascript - 使用 JavaScript 时生成 PDF