mPDF - 仅在奇数页上显示背景

Posted

技术标签:

【中文标题】mPDF - 仅在奇数页上显示背景【英文标题】:mPDF - Show background only on odd pages 【发布时间】:2019-12-13 06:55:18 【问题描述】:

使用 mPDF,我尝试仅在奇数页上应用背景图像。

这可行(只有奇数页会变红):

$pdf->SetDefaultBodyCSS('background', 'red');
$pdf->Writehtml('test');
$pdf->SetDefaultBodyCSS('background', 'white');
$pdf->AddPage();
$pdf->WriteHTML('test');

但这不起作用(背景显示在第 1 页和第 2 页上):

$pdf->SetDefaultBodyCSS('background', 'url(\'./pdf-bg.png\')');
$pdf->WriteHTML('test');
$pdf->SetDefaultBodyCSS('background', 'none');
$pdf->AddPage();
$pdf->WriteHTML('test');

到目前为止我尝试了什么:

使用命名页面(例如@page oddpage),它完全改变了页面参数并破坏了布局

使用 @page :first,我不能使用 :first 因为我需要每个奇数页面都有背景,而不仅仅是第一个

有什么线索吗?提前感谢您!

【问题讨论】:

【参考方案1】:

我最终找到了一种解决方法,虽然不是我最喜欢的解决方案,但它确实有效!

$pdf->SetDefaultBodyCSS('background-image', 'pdf-bg.png');
$pdf->SetDefaultBodyCSS('background-image-resize', 6);
$pdf->SetDefaultBodyCSS('background-image-resolution', '300dpi');
$pdf->WriteHTML('test');
$pdf->SetDefaultBodyCSS('background-image', 'pdf-bg-white.png'); // Reset background to a blank page
$pdf->AddPage();
$pdf->WriteHTML('test');

所以基本上使用background-image CSS 属性而不是background 并使用全白背景重置背景以模拟空白页。

【讨论】:

以上是关于mPDF - 仅在奇数页上显示背景的主要内容,如果未能解决你的问题,请参考以下文章

用JS文件如何设置奇数表格行背景和偶数表格行背景

背景图像仅在重新加载页面后显示

白色背景的应用程序图标仅在 iOS 上显示为黑色

php 显示相同分类中的相关自定义帖子 - 仅在单页上显示

PHP Wordpress:仅在类别/存档的第一页上显示

PHP Wordpress - 仅在特定类别的第一页上显示精选帖子