从浏览器窗口创建 PDF(或其他矢量图形)

从浏览器窗口创建 PDF(或其他矢量图形)

通常,我需要对在浏览器中打开的网页进行 PDF 渲染。

我使用 Print-to-PDF 得到了一个近似值,但它看起来并不相同,主要是由于布局差异,例如不同的宽度,或 100% 高度元素无法正常工作,或由于 CSS 媒体查询而导致的样式不同。但它表明,原则上,现代浏览器应该可以毫无困难地将屏幕渲染为 PDF 或其他矢量图形格式。

如何让我的(任何)浏览器将网页保存为 PDF?

答案1

我目前的解决方法(尽管我仍然希望看到一个更清晰的解决方案)是设置以下 Firefox 配置键:

print.print_margin_bottom = 0
print.print_margin_top = 0
print.print_margin_left = 0
print.print_margin_right = 0
print.print_unwriteable_margin_bottom = 0
print.print_unwriteable_margin_top = 0
print.print_unwriteable_margin_left = 0
print.print_unwriteable_margin_right = 0
print.print_bgcolor = true
print.print_bgimages = true

然后进行调整print.print_scaling,使得纸张的宽度大致对应于我使用操作系统的“打印为 PDF”功能时所需的分辨率。

我仍然遇到一个问题,那就是网页布局需要根据特定的屏幕进行调整高度虽然不会按预期工作,但这是一个开始。

相关内容