css - 如何在 headless Chrome 中更改纸张大小 --print-to-pdf

标签 css google-chrome pdf printing google-chrome-headless

我正在使用 headless Chrome 将 html 文档导出为 pdf

google-chrome --headless --disable-gpu --print-to-pdf='output_path' 'url'

如何更改生成的 pdf 中的纸张大小?

我可以控制 Chrome 参数和 html。

我总是收到美国信件。

没有记录在案的命令行选项。

我试过设置 CSS:@page {size: A4;}。在 headless 模式下没有效果,但是当我在正常模式下按 Ctrl+P 时有效(为 Save as pdf 选择纸张大小的选项消失,导出的 pdf 具有 A4 页面大小)。

我已经在 Ubuntu 16.04 上的 Chrome 版本 59、60 和 61 上试过了。

最佳答案

页面大小可以以英寸/毫米为单位设置。我还没有测试过像素大小。这是一组 CSS 规则,对我有用:

@page {
  margin: 0;
  padding: 0;
  size: 5in 6.5in;
}

我的具体情况是渲染 svg-to-pdf,而不是 html;对于 svg,您可能还需要添加 widthheight <svg> 的属性标签:

<svg width="5in" height="6.5in" ...>

就是这样!输出 PDF 不会有边距,并且会保留所需的大小 - 在我的例子中为 5"x6.5"。

关于css - 如何在 headless Chrome 中更改纸张大小 --print-to-pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44970113/

相关文章:

jquery - Chrome 61 jQuery 滚动不再工作

javascript - 获取定期调用的函数

用于减小 PDF 文件大小的 Windows 批处理文件

python - Agg 和 Cairo 之间的 Matplotlib 后端差异

javascript - 在 CSS 中调用 JavaScript 函数

javascript - JS/CSS : Moving span in an animated way

javascript - 如何在 Firefox 调试器中搜索 javascript?

javascript - 我可以使用 iText 创建 pdf 中不需要的字段吗?

php - 谷歌应用引擎子目录以不同方式加载尾随/

css - Bootstrap 自定义列宽堆叠而不是在调整大小时缩小