【问题标题】:Headless HTML rendering, preferably open source无头 HTML 渲染,最好是开源的
【发布时间】:2010-09-10 09:14:36
【问题描述】:

我目前正在寻求执行一些无头 HTML 渲染,以实质上在屏幕外创建资源并将结果保存为图像。目的是采用 HTML 语言的一个子集并将其应用于小屏幕设备(如 PocketPC),因为我们的用户知道 HTML,并且从 Photoshop 到 HTML 标记的转换是可以接受的。

我也在考虑使用 WPF Imaging,所以如果有人可以衡量 cmets 的使用情况(特别是您会向用户指出用于创建 WPF 布局的工具,您可以将其转换为图像以及它的性能如何),我们将不胜感激。

我的优先顺序是:

  1. 开源
  2. 高性能
  3. 原生 C# 或 C# 包装器
  4. 在 Windows 上实现的最低复杂度

我不太担心无头渲染的功能有多丰富,因为我们不会大量使用 JavaScript、Flash 或除图像之外的其他嵌入对象。任何使用 IE、Firefox、webkit 甚至自定义呈现实现的东西我都可以接受,只要它的实现接近符合标准。

【问题讨论】:

    标签: c# .net html browser


    【解决方案1】:

    Flying Saucer 是一个基于 Java 的 XHTML 和 CSS2.1 渲染器,它通过 ACID2 并带有一些错误警告。它的缺点是它没有错误处理。它并不是真正设计为浏览器,而是用作在应用程序中显示 HTML 内容(帮助文件等)的组件。

    【讨论】:

      【解决方案2】:
      【解决方案3】:

      我在搜索过程中找到了IECapt,它实际上包含一个 C# 实现。虽然它是设计为 CLI 应用程序,但提供了源代码,因此我可以根据自己的需要对其进行修改。

      【讨论】:

        【解决方案4】:

        http://www.phantomjs.org/

        完整的网络堆栈

        PhantomJS 是一个带有 JavaScript API 的无头 WebKit。它具有对各种 Web 标准的快速原生支持:DOM 处理、CSS 选择器、JSON、Canvas 和 SVG。

        【讨论】:

          【解决方案5】:

          适用于 WebKit(Safari、Google Chrome)和 IECapt(MS IE)的工具是 CutyCapt

          【讨论】:

            【解决方案6】:

            我很喜欢将 url2png 用于这些类型的工作/屏幕截图。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2019-06-26
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多