css dompdf:A4页面上的白色边

aiazj4mn  于 2022-12-20  发布在  其他
关注(0)|答案(4)|浏览(137)

我正在使用dompdf(一个PHP库)创建一个PDF页面,我有一个问题,以设置适当的尺寸。当我使用CSS属性:

@page {
    size: 21cm 29.7cm; 
}

...例如,我想有一个红色的页面上半部分,PDF文件是可以的,但打印后我得到了白色的边缘。我该如何修复它?

5w9g7ksd

5w9g7ksd1#

您已设置页面大小,但未设置内容边界。如果不希望页面上有任何边框,则必须将页边距设置为0。

@page {
  size: 21cm 29.7cm;
  margin: 0;
}

这将删除正文周围的边距,但这也意味着您的内容将与页面边缘碰撞。如果您希望正文内容与边缘有一定的间距给予它一些填充。

body {
  padding: .5in;
}
8yoxcaq7

8yoxcaq72#

诺巴地111:
您是否使用setPaper()函数设置了正确的纸张大小?

// reference the Dompdf namespace
use Dompdf\Dompdf;

// instantiate and use the dompdf class
$dompdf = new Dompdf();
$dompdf->loadHtml('hello world');

// (Optional) Setup the paper size and orientation
$dompdf->setPaper('A4', 'landscape');

// Render the HTML as PDF
$dompdf->render();

// Output the generated PDF to Browser
$dompdf->stream();

参考:https://github.com/dompdf/dompdf

kpbpu008

kpbpu0083#

好的,所以问题不在于domPDF,而在于打印机设置。要实现这个目标,你必须设置无边框属性。
顺便说一句。当你使用

$dompdf->setPaper('A4', 'landscape');

你不需要到设置页大小属性在css(但它帮助期间创建页在html)

pxyaymoc

pxyaymoc4#

@page { size: auto; size: A4 portrait; }

相关问题