【问题标题】:Chrome "Save to PDF" margins background-color?Chrome“保存到PDF”边距背景颜色?
【发布时间】:2017-08-05 07:13:09
【问题描述】:

在 Google Chrome(“保存为 PDF”虚拟打印机)中打印为 PDF 时,可以选择以英寸//厘米为单位设置每页的边距。但是,默认情况下它们始终是白色的。有没有办法将颜色更改为蓝色,或使用背景图像?

我尝试过的:

  1. 确保打印所有背景图形:

    @media print and (color) {
      * {
        -webkit-print-color-adjust: exact; 
        print-color-adjust: exact;
      }
    }
    
  2. 尝试为@page 属性设置bg-color:

    @page {
       size: 7in 10in;
       margin: 1in;
    }
    
  3. 尝试为页面上的每个元素设置背景颜色:html、body、#content。

This article 显示了一个示例,如何使用脚注影响边距区域:

@page:right{ 
  @bottom-left {
    margin: 10pt 0 30pt 0;
    border-top: .25pt solid #666;
    content: "My book";
    font-size: 9pt;
    color: #333;
  }
}

但这对我不起作用。

我还尝试检查 chrome 内置 PDF 预览器并找到一个字符串:

<embed id="plugin" type="application/x-google-chrome-pdf" src="chrome://print/190/0/print.pdf" stream-url="chrome://print/190/0/print.pdf" headers="" background-color="0xFF525659" top-toolbar-height="0" top-level-url="undefined">

但是,虽然 background-color 已经加载并呈现,但修改它有点棘手。而且我不确定它是否会影响生成的 PDF 或只是预览:

还有其他选择吗?这个特性对我来说相当重要,所以我已经准备好进行内存热补丁,或者至少在需要时从源代码重建 Chromium。

目标平台: Win 10 x64

【问题讨论】:

  • 您找到解决方案了吗?可以通过@media print{ @page{ } } CSS 来实现吗??有没有办法解决这个问题?

标签: css google-chrome pdf pdf-generation


【解决方案1】:

没有直接的方法,但你可以伪造它:

转到格式>页面。

将边距设置为 0cm。忽略打印​​机警告。 在选项卡区域中将背景设置为您喜欢的颜色。 转到选项卡边框并定义相同颜色的边框。在该选项卡上,使用“与内容间距”设置来伪造页边距。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-01
    • 2012-04-20
    • 2014-12-21
    • 1970-01-01
    相关资源
    最近更新 更多