【发布时间】:2017-08-05 07:13:09
【问题描述】:
在 Google Chrome(“保存为 PDF”虚拟打印机)中打印为 PDF 时,可以选择以英寸//厘米为单位设置每页的边距。但是,默认情况下它们始终是白色的。有没有办法将颜色更改为蓝色,或使用背景图像?
我尝试过的:
-
确保打印所有背景图形:
@media print and (color) { * { -webkit-print-color-adjust: exact; print-color-adjust: exact; } } -
尝试为@page 属性设置bg-color:
@page { size: 7in 10in; margin: 1in; } - 尝试为页面上的每个元素设置背景颜色: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