我正在使用 Headless Chrome 将 HTML 呈现为 PDF,但是 PDF 中的背景颜色渲染似乎只适用于某些网页。
这是我正在使用的库:https://github.com/chrome-php/headless-chromium-php
对于下面的代码,如果我将 $url 更改为 https://www.hovec.co.uk/然后它不会呈现任何背景颜色或图像,但它适用于 BBC 网站。
$browserFactory = new BrowserFactory("/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome"); //thats my local Chrome
$browser = $browserFactory->createBrowser([
'windowSize' => [794, 1122]
]);
$url='https://www.bbc.co.uk/';
//$url='https://www.hovec.co.uk/';
// creates a new page and navigate to $url
$page = $browser->createPage();
$page->navigate($url)->waitForNavigation();
$page->pdf(['printBackground'=>true, 'marginTop' => 0.0, 'marginBottom' => 0.0, 'marginLeft' => 0.0, 'marginRight' => 0.0])->saveToFile($filepath);
$browser->close();
如有任何帮助,我们将不胜感激!
最佳答案
将此样式
添加到 HTML 页面:
<style>
html { -webkit-print-color-adjust: exact; }
</style>
关于php - 使用 Headless Chrome,背景颜色不会在所有页面/站点的 PDF 上呈现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59749797/