【问题标题】:What Software Is Available For Creating Server-Side PDF Files? [closed]哪些软件可用于创建服务器端 PDF 文件? [关闭]
【发布时间】:2013-02-15 03:20:51
【问题描述】:

我需要一个强大的产品,用于使用用于 ASP.NET WebForms/MVC 的 C# API 从 Web 服务器上的网页创建 PDF 文件。该产品应该支持标记中的 SVG 和 PATH 标记,并且能够呈现通过在呈现页面后触发的 ajax 调用创建的标记。以下步骤将使您更好地了解我要完成的工作。

  1. 用户单击网页上的“导出为 PDF”按钮。这会向通用处理程序(一个 ashx 文件)发送一个请求。

  2. 通用处理程序验证用户的凭据和安全许可,然后将要呈现为 PDF 文件的网页的 URL 传递给 PDF 生成工具(这是 C# API 发挥作用的地方)。

  3. PDF 生成工具将 PDF 文件保存在服务器上的临时文件夹中。

  4. 临时 PDF 被读入字节数组并发送到响应流,然后用户可以在其中下载文件。

  5. 如果 PDF 生成工具支持,它会将 PDF 文件返回到用户的浏览器,而不是保存到服务器上的临时位置。

我目前正在使用 activePDF 的 WebGrabber 工具来完成此操作,但它在渲染 Kendo DataViz 图表时遇到问题(它们使用 SVG 和 PATH 标签)。我也试过 Aspose.Pdf 这太可怕了。我想知道是否有人对此有任何经验,并且可以推荐一个可以处理这些要求的专业工具。

只是一些最后的说明:

  • WebBrowser.Print() 方法不是一个选项。
  • Adobe 是否针对这些要求提供任何服务?
  • 我查看了 iText,但不知道它是否支持 Kendo DataViz 图表。

【问题讨论】:

  • iTextSharp 一直对我有用,尽管您可能需要构建一些您想要的更简单的部分 (1,2,5)
  • 仅供参考 - Stack Overflow 上通常不欢迎这些类型的推荐问题。请参阅faq 部分,了解密切的原因,特别是“不具建设性”。
  • 我完全不同意这个问题没有建设性。我发现它很有用。恕我直言,SO 对这类事情的集体看法已经变得内敛和反常。

标签: c# asp.net asp.net-mvc pdf pdf-generation


【解决方案1】:

我们需要使用我们的 WCF 服务在服务器中生成 PDF。我们需要创建 PDF 并合并,我们使用了 PDFSharp,不确定它是否可以处理您描述的内容。

http://www.pdfsharp.net/

我们还使用了 ActiveReports 服务器版本 7,它以 xml 格式输入并以 PDF、WORD 和 HTML 格式输出

【讨论】:

  • PdfSharp 显然使用 GDI+ 或 WPF,这两者在服务器进程 (AFAIK) 中使用都不安全。
【解决方案2】:

我通常使用ActiveReports 来生成 PDF,但这更像是一个可以导出为 PDF 的报告引擎。如果您可以将屏幕截图作为图像获取,则可以将图像动态添加到报告中,然后将其发送到 PDF。

或者,如果需要打印特定页面,例如收据,那么我不会获取 URL。相反,我会将收据布置为报告,然后提供适当的数据来生成该报告,将其导出为 PDF,并将其传送到浏览器。

【讨论】:

    【解决方案3】:

    我之前在 ASP.NET MVC 中使用 wkhtmltopdf 从网页渲染 PDF。但是,我一直将其称为 exe,而不是 API。

    似乎有一个项目为其提供 C# API here

    【讨论】:

      猜你喜欢
      • 2010-10-04
      • 2012-02-09
      • 2011-06-12
      • 2016-06-07
      • 1970-01-01
      • 2011-08-24
      • 2019-08-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多