kartik\mpdf 中 HTML 的新页面 (Yii2)
New page from HTML in kartik\mpdf (Yii2)
我有问题。如何从 HTML 添加新页面到 PDF?
马上会说不知道为什么,但是解决办法如:
<pagebreak />
或
h1 {page-break-before: always}
不工作。
我的PHP代码:
$pdf = new Pdf([
'mode' => Pdf::MODE_UTF8,
'format' => Pdf::FORMAT_A4,
'orientation' => Pdf::ORIENT_PORTRAIT,
'destination' => Pdf::DEST_FILE,
'filename' => $path,
'content' => $content,
'cssInline' => '.font_next{font-family:DoodlePen}table{border-collapse:collapse;width:100%}td{border:1px solid #000}',
]);
return $pdf->render();
有没有人有这方面的经验可以帮助你?
来自 docs,看起来您可以使用 HTML
,例如:
<pagebreak />
or
<tocpagebreak />
或PHP
:
$mpdf->AddPage();
$mpdf->TOCpagebreak();
但是您已经说过您尝试了 html 但没有用。 Maybe you have a parent element with float?
好的,它有效。
我用的是这个方法:https://davidwalsh.name/css-page-breaks
在HTML中:
<div className="page-break"></div>
在PHP中:
$pdf = new Pdf([
'mode' => Pdf::MODE_UTF8,
'format' => Pdf::FORMAT_A4,
'orientation' => Pdf::ORIENT_PORTRAIT,
'destination' => Pdf::DEST_FILE,
'filename' => $path,
'content' => $content,
'cssInline' => '
@media all{
.font_next{font-family:DoodlePen}table{border-collapse:collapse;width:100%}td{border:1px solid #000}.page-break {display: none;}
}
@media print{
.page-break{display: block;page-break-before: always;}
}
',
]);
return $pdf->render();
我有问题。如何从 HTML 添加新页面到 PDF?
马上会说不知道为什么,但是解决办法如:
<pagebreak />
或
h1 {page-break-before: always}
不工作。
我的PHP代码:
$pdf = new Pdf([
'mode' => Pdf::MODE_UTF8,
'format' => Pdf::FORMAT_A4,
'orientation' => Pdf::ORIENT_PORTRAIT,
'destination' => Pdf::DEST_FILE,
'filename' => $path,
'content' => $content,
'cssInline' => '.font_next{font-family:DoodlePen}table{border-collapse:collapse;width:100%}td{border:1px solid #000}',
]);
return $pdf->render();
有没有人有这方面的经验可以帮助你?
来自 docs,看起来您可以使用 HTML
,例如:
<pagebreak />
or
<tocpagebreak />
或PHP
:
$mpdf->AddPage();
$mpdf->TOCpagebreak();
但是您已经说过您尝试了 html 但没有用。 Maybe you have a parent element with float?
好的,它有效。
我用的是这个方法:https://davidwalsh.name/css-page-breaks
在HTML中:
<div className="page-break"></div>
在PHP中:
$pdf = new Pdf([
'mode' => Pdf::MODE_UTF8,
'format' => Pdf::FORMAT_A4,
'orientation' => Pdf::ORIENT_PORTRAIT,
'destination' => Pdf::DEST_FILE,
'filename' => $path,
'content' => $content,
'cssInline' => '
@media all{
.font_next{font-family:DoodlePen}table{border-collapse:collapse;width:100%}td{border:1px solid #000}.page-break {display: none;}
}
@media print{
.page-break{display: block;page-break-before: always;}
}
',
]);
return $pdf->render();