如何将网页打印为单个*连续*页面的 PDF?

如何将网页打印为单个*连续*页面的 PDF?

我有一本 ipython 笔记本,我想打印它但不想让分页符穿过我的图表。

有什么建议吗?我尝试了 Chromium 的“Awesome Screenshot”扩展,但它有缺陷,最终截掉了我一半的页面。

有什么建议么?

答案1

我已设法gnome-web-photo结合使用imagemagick,使用单个命令生成质量不错的单个高网页 pdf。您应该已经安装了imagemagick,但gnome-web-photo要安装

sudo apt-get install gnome-web-photo

在此单行代码中,convert使用了 imagemagick 包中的程序:

gnome-web-photo --mode=photo http://www.askubuntu.com --file ask.png && cat ask.png | convert - ask.pdf 

高网页通过文件下载,如果不先将其保存为图像文件,则gnome-web-photo无法直接通过管道传输。因此,通过管道接收该文件的一种方法是将其连接起来,然后使用,以便通过stdin(表示为)接收 png 文件,然后将其转换为 pdf。convertconvertconvert -convert-

但是,对于命令的第二部分,您可以使用&& convert ask.png ask.pdf而不是&& cat ask.png | convert - ask.pdf,但两者都花费大约相同的时间。

您可以使用带有--print选项的gnome-web-photo页面打印到文件(即 pdf),但是它不会产生合适的单页结果,因此上面的单行代码是可以做到的最好的。

答案2

PDF 具有定义的媒体大小,因此您必须采取一些解决方法:

  1. 在打印机中设置自定义页面大小。我有一台 TenLetter,尺寸为 215.9 × 2794 毫米,或长度相当于 10 页美国信纸的纸张。除非整个内容超过十页,否则它不会分割。查看(缩放是您的好朋友)或打印很麻烦,但它不会破坏任何图像。

  2. 手动将静态 HTML 页面导入文字处理器,并在不想分割的图像前进行手动分页。

自动分页是一个难题,并且大多数浏览器在实现打印支持方面并不是很好。CSS 打印配置文件是那些伟大的想法之一几乎适合所有人……

答案3

我最近有同样的需求,并分两步进行:

1)我使用 Chrome 屏幕捕获扩展程序(https://chrome.google.com/webstore/detail/screen-capture-by-google/cpngackimfmofbokmjmljamhdncknpmg?hl=en)以 png 格式捕获页面

2)我将 PNG 打印为 PDF

相关内容