Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
1.0k views
in Technique[技术] by (71.8m points)

php - Mpdf different header for first page

I am working on quotation software where I am using mpdf for quotation generation using HTML format. Header are set by code below.

$mpdf->SetHTMLHeader($header);
$mpdf=>SetHTMLFooter($footer);

Which applies uniformly to all pages. But I need different header to first page. How should I achieve it?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

As you wrote, SetHTMLHeader and SetHTMLFooter apply to the entire document. If you want different headers / footers for the first page you will have to remove both

$mpdf->SetHTMLHeader($header);
$mpdf->SetHTMLFooter($footer);

And do it like so:

  1. In your PDF's HTML code, place right after the <body> tag the different header definitions like so:
<htmlpageheader name="firstpage" style="display:none">
    <div style="text-align:center">First Page</div>
</htmlpageheader>

<htmlpageheader name="otherpages" style="display:none">
    <div style="text-align:center">{PAGENO}</div>
</htmlpageheader>
  1. Set your headers like this (still in you first page's code)
<sethtmlpageheader name="firstpage" value="on" show-this-page="1" />
<sethtmlpageheader name="otherpages" value="on" />

This turns on both headers but on the first page shows the "firstpage" header.

  1. Same goes for footers.


IMPORTANT NOTE:

There are actually a few ways to go about it. They are all documented here. I chose to write here the one I think is the most straight forward and will easily work, but I recommend you read the docs and choose the one that best suits your needs.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...