无法呈现 header

Can't render header

我正在尝试使用 mPdf 和 header 渲染 PDF 文档,但没有成功。

这是我的代码:

$mpdf = new \Mpdf\Mpdf();
$html = '<style>@page {
margin:10mm;
background-color: #4183c4;
}
body {
color:#ffffff;
font-size:20px;
}
</style>
<htmlpageheader>
    <div style="text-align: right">My document</div>
</htmlpageheader>
<div>Hello world!</div>';
$mpdf->WriteHTML($html);
$mpdf->AddPage();
$mpdf->WriteHTML('Hi againg');
$mpdf->Output(__DIR__ . '/pdf.pdf');

我也试过:

$mpdf = new \Mpdf\Mpdf();
$html = '<style>@page {
margin:10mm;
background-color: #4183c4;
}
body {
color:#ffffff;
font-size:20px;
}
</style>
<div>Hello world!</div>';
$mpdf->SetHTMLHeader('<div style="text-align: right">My document</div>');
$mpdf->WriteHTML($html);
$mpdf->AddPage();
$mpdf->WriteHTML('Hi againg');
$mpdf->Output(__DIR__ . '/pdf.pdf');

@page CSS mPDF 中的选择器处理是特定的并重写您的 header(为空)。

@page CSS 规则移动到body 选择器并在mPDF 构造函数中设置页边距,header 将出现。

$mpdf = new \Mpdf\Mpdf([
  'margin_left' => '10mm',
  'margin_right' => '10mm',
  'margin_top' => '10mm',
  'margin_bottom' => '10mm',
]);

$html = '<style>
body {
    background-color: #4183c4;
    color:#ffffff;
    font-size:20px;
}
</style>
<div>Hello world!</div>';

$mpdf->SetHTMLHeader('<div style="text-align: right">My document</div>');
$mpdf->WriteHTML($html);

$mpdf->AddPage();
$mpdf->WriteHTML('Hi againg');

$mpdf->Output(__DIR__ . '/pdf.pdf');