如何在 Linux 上将 HTML 网页转换为 PNG 图像如何在 Linux 上将 HTML 网页转换为 PNG 图像如何在 Linux 上将 HTML 网页转换为 PNG 图像如何在 Linux 上将 HTML 网页转换为 PNG 图像
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Linux 上将 HTML 网页转换为 PNG 图像

将特定网页截屏为 PNG 图像的最简单方法之一是使用 CutyCapt,这是一个方便的命令行 Linux 工具,用于将任何 HTML 网页转换为各种矢量和位图图像格式(例如,SVG、PDF、PS、PNG、JPEG、TIFF、GIF)。在内部,CutyCapt 使用 WebKit 渲染引擎将网页渲染输出导出到图像文件。 CutyCapt 使用 Qt 构建,实际上是一个跨平台应用程序,也可用于 Windows 等其他平台。

在本教程中,我将介绍如何使用CutyCapt将 HTML 网页转换为 PNG 图像格式。

在 Linux 上安装 CutyCapt

以下是在 Linux 上安装 CutyCapt 的发行版特定说明。

在 Debian、Ubuntu 或 Linux Mint 上安装 CutyCapt


$ sudo apt-get install cutycapt

在 Fedora 上安装 CutyCapt


$ sudo yum install subversion qt-devel qtwebkit-devel gcc-c++ make
$ svn co svn://svn.code.sf.net/p/cutycapt/code/ cutycapt
$ cd cutycapt/CutyCapt

在Fedora上编译之前,您需要修补源代码。

使用文本编辑器打开 CutyCapt.hpp,并在文件开头添加以下两行。


#include <QNetworkReply>
#include <QSslError>

最后,编译并安装CutyCapt,如下所示。


$ qmake-qt4
$ make
$ sudo cp CutyCapt /usr/local/bin/cutycapt

在 CentOS 或 RHEL 上安装 CutyCapt

首先在 Linux 上启用 EPEL 存储库。然后按照与 Fedora 中相同的过程来构建和安装 CutyCapt。

使用 CutyCapt 将 HTML 转换为 PNG

要将 HTML 页面的屏幕截图截取为 PNG 图像,只需按以下格式运行 CutyCapt 即可。


$ cutycapt --url=http://www.cnn.com --out=cnn.png

要将 HTML 页面保存为不同的格式(例如 PDF),只需适当地指定输出文件即可。


$ cutycapt --url=http://www.cnn.com --out=cnn.pdf

下面显示了 cutycapt 的命令行选项。

在无头服务器上使用 CutyCapt 将 HTML 转换为 PNG

虽然 CutyCapt 是一个 CLI 工具,但它需要运行 X 服务器。如果您尝试在无头服务器上运行 CutyCapt,您将收到错误:


cutycapt: cannot connect to X server :0

如果你想在没有X windows的无头服务器上运行CutyCapt,你可以在服务器上设置Xvfb(轻量级假 X11服务器),这样CutyCapt就不会抱怨。

要在 Debian、Ubuntu 或 Linux Mint 上安装 Xvfb:


$ sudo apt-get install xvfb

要在 Fedora、CentOS 或 RHEL 上安装 Xvfb:


$ sudo yum install xvfb

安装 Xvfb 后,继续运行 CutyCapt,如下所示。


$ xvfb-run --server-args="-screen 0, 1280x1200x24" cutycapt --url=http://www.cnn.com --out=cnn.png

它将首先启动 Xvfb 服务器,然后使用 CutyCapt 来屏幕截图网页。所以可能需要更长的时间。如果您想进行多个屏幕截图,您可能需要事先启动 Xvfb 服务器作为后台守护程序。

©2015-2025 艾丽卡 support@alaica.com