代码之家  ›  专栏  ›  技术社区  ›  gerdemb

用于将HTML转换为图像的简单HTML布局引擎

  •  17
  • gerdemb  · 技术社区  · 16 年前

    我需要一个工具来自动转换成图像简单的HTML。我将控制HTML输入,它将由简单的文本格式标记和可能的图像链接组成——我不需要能够呈现任意HTML。有没有一个简单的方法可以做到这一点?

    我看过Gecko和Webkit等HTML布局引擎,但坦率地说,它们的选项太多了,我不需要一个完整的web浏览器!可以这样使用这些发动机吗?有人能把我引向正确的方向吗?

    其他可能的浏览器截图依赖于真实浏览器的屏幕截图,但我将在一个可能有很多用户的web服务器上运行此应用程序,因此性能非常重要,我担心这种解决方案无法扩展。

    编辑:很抱歉,忘了提及我的服务器正在运行Linux,因此Windows解决方案不会有帮助。:)

    7 回复  |  直到 16 年前
        1
  •  15
  •   gerdemb    16 年前

    在回答我自己的问题时,我发现了这个有用的工具,它使用WebKit呈现页面,然后将输出捕获为图像甚至PDF格式!

    http://cutycapt.sourceforge.net/

        2
  •  7
  •   Joe Kuan    12 年前

    在我看来,PhantomJs(无头webkit)是迄今为止最好的解决方案,快速、简单、干净。你可以用它做很多事情。

    看见 http://phantomjs.org

    this

        3
  •  5
  •   Jay    16 年前

    如果您在Linux上运行并且KDE LIB可用,您可能会发现这很有用: khtml2png

    khtml2png是一个用于创建网页截图的命令行程序。它使用libkhtml(KDE webbrowser Konqueror中使用的库)。在khtml2png 2.0.5至2.5.0中,ImageMagick图形转换工具包中的“转换”用于创建各种图像文件格式的输出文件。2.6.0和未来的开发将使用Qt库的内置转换。

    另外,为了跟进Vilx的建议,您可以使用 要将HTML转换为ps文件,则 gs http://www.karakas-online.de/myLinuxTips/ps2png.html

        4
  •  2
  •   Rob    16 年前

    窗户?如果是的话,那么HTMLlayout可能会有所帮助——它是一个免费的渲染引擎,并且有一个简单的API——从C/C++使用它很容易——将HTML转换成BMP并不难。

    http://www.terrainformatica.com/htmlayout/

        5
  •  1
  •   Brandon Rhodes    10 年前

    我一直都有很好的运气和你在一起 wkhtmltoimage 命令(和,对于打印输出, wkhtmltopdf )这已经在Ubuntu中使用了很多年了,如果我记得的话,它总是正确地、相当快地呈现出来。

    http://wkhtmltopdf.org/

    有几个选项可用,但基本调用如下所示:

    wkhtmltoimage tmp.html tmp.png
    
        6
  •  0
  •   Vilx-    16 年前

        7
  •  0
  •   Alex Shnayder    16 年前

    你可以使用 PDFCreator 应用此应用程序允许打印多种格式,包括各种图像。它包括一个ActiveX/com服务器,允许您相当轻松地自动化该过程。你几乎可以转换任何你可以打印的东西。 这种方法的一个缺点是,由于它使用打印框架进行转换,您一次只能转换一个文档,因此我不知道它是否足以用于网站。