2

我有一个使用 mpdf 动态生成的报告 PDF,其中 HTML 标题在整个文档中动态更改。这适用于我手动插入分页符并设置新标题的所有页面,但是分页符是由页面溢出的内容引起的,标题不会出现,我留下了一个空白空间。

我正在使用 html 标签在更新时设置标题:

<sethtmlpageheader name="page_header_<?=$profile_name ?>" value="on" show-this-page="1" />

我试过改变这个(例如添加一个 page="all" 属性)但它只会让问题变得更糟而不是更好,事实上我尝试过的大多数可能的解决方案都导致了比他们修复的更多的问题。

4

1 回答 1

1

以下代码对我有用(在删除标签的show-this-page="1" 属性之后sethtmlpageheader)(它是树枝模板中的一个片段(category变量从父模板传递给模板),但我想它应该在其他模板引擎或香草html也是):

{% set htmlPageHeaderName = "product-list-header-" ~ category.guid %}
<htmlpageheader name="{{ htmlPageHeaderName }}"> {# mPdf reserved tag #}
    <div class="product-list-header">
        <b>{{ macros.categoryHeadingWithParentsToLvl(category, "div", 0) }}</b></div>
</htmlpageheader>

<htmlpagefooter name="product-list-footer"> {# mPdf reserved tag #}
    <div class="product-list-footer">
        tel: <b>123 456 789</b>, fax: <b>123 456 788</b>, e-mail: <b>info@info.info</b>, web:<b>http://www.www.ww</b>
    </div>
    <div class="page-no">{PAGENO}</div>
</htmlpagefooter>

<sethtmlpageheader name="{{ htmlPageHeaderName }}" page="all" value="1" /> {# mPdf reserved tag #}

<sethtmlpagefooter name="product-list-footer" page="all" value="1"/> {# mPdf reserved tag #}
<columns column-count="2" valign="justify" column-gap="8"> {# mPdf reserved tag #}
    {% set categoryParents = category.parentsToLvl(1) %}
    {{ macros.categoryHeadingWithParentsToLvl(category, "h2", 1) }}
    <div class="productsList">
        {% for producerName, productsByEdition in productsByCategoryProducerEdition %}
            <div class="producerDiv">
                <h3>{{ producerName }}</h3>
                {% for editionName, products in productsByEdition %}
                    <div class="editionDiv">
    ...
于 2017-01-09T10:58:31.010 回答