如何在无头 Chrome 中更改纸张尺寸 --print-to-pdf

新手上路,请多包涵

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

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

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

我可以控制 Chrome 参数和 html。

我总是收到美国信函。

没有为此记录的命令行选项。

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

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

原文由 Crazy Yoghurt 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
1 个回答

页面大小可以以英寸/毫米为单位设置。我还没有测试过像素大小。这是一组对我有用的 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”。

原文由 Avael Kross 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题