【问题标题】:How would I convert a HTML5 / CSS3 document to PDF?如何将 HTML5 / CSS3 文档转换为 PDF?
【发布时间】:2011-04-30 22:51:53
【问题描述】:

我们目前正在使用 html5 / css3 为我们的 Web 应用程序生成报告,它们在屏幕上看起来不错,但很明显,当用户点击打印时,谁知道打印机会输出什么。因此,我想知道将这些报告转换为 PDF 以供下载/打印,同时保持与屏幕报告相同的视觉质量的最佳方法是什么。

2010-10-26 16:01 更新:我们同时使用 .NET 和 Perl

【问题讨论】:

  • 这取决于所使用的平台 - 我知道一些适用于 windows/.NET 的好的解决方案,但也许这不是您要寻找的......
  • 这些报告将主要由 windows/.net 应用程序创建

标签: xhtml html pdf-generation css


【解决方案1】:

如果您正在使用一些新的 HTML5 元素,例如 Canvas,那么即使是流行的 PDF 转换器也可能对您没有帮助。

我建议您放置适合打印的 CSS 版本。这可以通过在包含打印版本定义的单独 CSS 文件的 <link rel="stylesheet"... 标记中使用 media="print" 属性来实现。

【讨论】:

  • 我们推迟了使用画布来生成报告,基本上我们拥有的是 xhtml 和 css3
【解决方案2】:

一些选项(都是专有的):

有关开源替代方案,请参见此处:

Open Source HTML to PDF Renderer with Full CSS Support

【讨论】:

    【解决方案3】:

    试试Prince XML,效果很好看。

    【讨论】:

      【解决方案4】:

      我唯一能想到的可能是wkHTMLtoPDF。这是一个基于 WebKit 生成 PDF 的 QT 应用程序。

      好消息是它甚至可以评估 JS,所以几乎什么都可以。

      另一个好消息是 QT 可用于多种平台。无论您使用什么,都有可能使用 QT。

      【讨论】:

      • 我想我们可能有一个构建服务器设置,我们将设置一个接收静态文件的服务,并返回一个漂亮的 pdf
      • 我们将在不久的将来出于我们自己的目的对其进行评估。告诉我进展如何。
      • Qt 不仅仅是“一个 X11 窗口的东西”:) en.wikipedia.org/wiki/Qt_(framework)
      • 这个库不支持 CSS3
      • 如果您查看en.wikipedia.org/wiki/…,您会发现没有浏览器完全支持css3,但它们都支持其中的一部分。他们支持的部分各不相同。 wkhtmltopdf 也没有使用最新版本的 WebKit。根据您使用的内容,嵌入的网络工具包将使用 2 到 9 年。
      【解决方案5】:

      ExpertPdf (www.html-to-pdf.net) 支持 html5 / css3。

      您可以在此处尝试在线演示: http://www.html-to-pdf.net/free-online-pdf-converter.aspx

      【讨论】:

        【解决方案6】:

        有一个节点模块html5-to-pdf 运行良好。

        是免费和开源的。

        它在 Electron 上运行。有一些错误(例如锚标记也呈现超链接) - 但它可能是一个简单的修复。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-11-12
          • 1970-01-01
          • 2018-01-07
          • 2017-01-13
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多