无需安装任何内容即可将HTML转换为图像

时间:2015-06-11 09:45:13

标签: php linux

我想创建一个将某些网站的HTML源代码转换为jpg / png图像的功能。我还必须在外部服务器上执行此操作 - 这意味着我不知道它是否具有所有必需的库,并且我不想安装太多的东西,越少越好。

我找到了两个选项:

- wkhtmltoimage
- cutycapt

但他们都需要依赖安装,更不用说仿真服务器,这很糟糕。

有没有办法在没有任何外部库的情况下执行此操作?谢谢!

2 个答案:

答案 0 :(得分:0)

您可以使用此Java库Html2Image。这个简单的Java库将纯HTML标记转换为图像,并使用HTML元素提供客户端图像映射,并且还支持不同的图像格式,如GIF,PNG或JPEG图像。

这个库有非常方便,简单和清醒的 API

常见用法是:

HtmlImageGenerator imageGenerator = new HtmlImageGenerator();

imageGenerator.loadHtml("<b>Hello World!</b> Please goto <a title=\"Goto Google\" href=\"http://www.google.com\">Google</a>.");
// OR you can fetch HTML from URL
imageGenerator.loadUrl("http://www.example.com/xyz.html");

imageGenerator.saveAsImage("hello-world.png");
imageGenerator.saveAsHtmlWithMap("hello-world.html", "hello-world.png");

将生成包含客户端图像映射的HTML和 hello-world.html 文件的 hello-world.png 图像。

此库中还有其他几个API,您可以根据自己的需要进行探索。

答案 1 :(得分:0)

这在使用pbmtext的linux中非常有用。此工具将任何文本转换为pbm图像文件。

对于你的情况,

curl -L google.com | pbmtext > google.pbm

然而,要小心这会产生一个非常大的文件(几百MB)。因此,您必须进行一些后期处理,例如将其转换为其他格式或调整大小。