当前位置: 首页 > 科技观察

如何在Linux上将HTML页面转换为Png图片?

时间:2023-03-15 16:22:54 科技观察

将特定页面捕获为png图像的最简单方法是使用CutyCapt,这是Linux的命令行工具,可以轻松地将HTML网页转换为矢量图形和位图图像格式(例如,SVG,PDF,PS,PNG、JPEG、TIFF、GIF)。CutyCapt内部使用WebKit渲染引擎导出网页渲染输出到图像文件。CutyCapt使用Qt构建,实际上是一个跨平台应用程序,也可在Windows上使用。(译注:还有一个基于IE内核的IECapt可以用于此目的)在本教程中,我将描述如何使用CutyCapt将HTML页面转换为png图像。在Linux上安装CutyCapt以下是特定Linux发行版上的安装命令。在Debian、Ubuntu或LinuxMint上安装CutyCapt$sudoapt-getinstallcutycapt在Fedora上安装CutyCapt$sudoyuinstallsubversionqt-develqtwebkit-develgcc-c++make$svncosvn://svn.code.sf.net/p/cutycapt/code/cutycapt$在cdcutycapt之前/CutyCapt可以在Fedora上编译,需要给源码打补丁。使用文本编辑器打开CutyCapt.hpp,并在文件开头添加以下两行。#include#include***,编译安装CutyCapt如下。$qmake-qt4$make$sudocpCutyCapt/usr/local/bin/cutycapt在CentOS或RHEL上安装CutyCapt首先在您的Linux上启用EPEL存储库。然后使用与在Fedora上相同的步骤进行编译和安装。使用CutyCapt将HTML转换为PNG要将HTML页面的屏幕截图转换为png图像,只需使用以下格式运行CutyCapt。$cutycapt--url=http://www.cnn.com--out=cnn.png要以不同的格式(例如PDF)保存HTML页面,只需适当地指定输出文件。$cutycapt--url=http://www.cnn.com--out=cnn.pdf下图显示了CutyCapt命令选项。在没有X的服务器上使用CutyCapt将HTML转换为PNG虽然CutyCapt是一个命令行工具,但它需要X服务才能运行。如果你试图在没有X的服务器上运行CutyCapt,你会得到这个错误:cutycapt:cannotconnecttoXserver:0如果你想在没有X的服务器上运行CutyCapt,你可以在服务器上安装Xvfb(轻量级“false”X11服务)。这样CutyCapt就不会报错了。在Debian、Ubuntu或LinuxMint上安装Xvfb:$sudoapt-getinstallxvfb在Fedora、CentOS或RHEL上安装Xvfb:$sudoyuinstallxvfb安装Xvfb后,接下来像这样运行CutyCapt。$xvfb-run--server-args="-screen0,1280x1200x24"cutycapt--url=http://www.cnn.com--out=cnn.png它会先运行Xbfb服??务,然后使用CutyCapt来抓取网页。所以可能需要更长时间。如果你想截取多个屏幕截图,你可能需要事先将Xvfb作为后台守护进程启动。via:http://xmodulo.com/2014/02/convert-html-web-page-png-image-linux.html译者:geekpi校对:wxy