【问题标题】:DOC to PDF library (not necessarily free) [closed]DOC 到 PDF 库(不一定免费)[关闭]
【发布时间】:2010-12-08 10:04:52
【问题描述】:

就人们对 DOC 到 .NET 的 PDF 库的偏好提出了一些建议。目前,我们目前在使用 OpenOffice,但这并不理想。我所追求的是一个库,它允许我转换 .DOC 并在代码中写出 .PDF。

该库不必是免费的,它还必须与 ASP.NET 一起使用。

谢谢

【问题讨论】:

标签: c# .net asp.net pdf


【解决方案1】:

我正在使用ExpertPDF 组件。这是一个付费部分,但直到现在它自己付费。

它非常易于处理,并且支持从 html 导出为 pdf 非常好。

干杯

【讨论】:

  • 刚刚看了一眼 - 似乎是 HTML 到 PDF 而不是 DOC 到 PDF?
  • 你是对的....只有RTF转PDF的选项...我的错。
【解决方案2】:

当然,最简单的方法是通过 OpenOffice 汇集它,因为 OO 知道源文件的格式。如果没有这些知识,您需要能够解释文件格式的东西,因此您实际上是在重新发明 OpenOffice。

您是否使用了 Print to PDF 打印机驱动程序,例如 CutePDF?它们的好处是您可以将它们与任何应用程序一起使用。但是当然,如​​果您尝试在服务器上执行此操作,您仍然需要使用 OpenOffice 进行打印。

CutePDF(和其他人)有一个程序员 API,以便您可以自动化该过程。不过,您应该对其中一些保持谨慎;如果 API 使用注册表来操作“打印”对话框,则可能会出现并发问题。

【讨论】:

    【解决方案3】:

    2 年前,我也需要为此找到解决方案。那时,我尝试的每个组件都会在一些对业务至关重要的文档中产生不准确的输出。但是,Word 2007“另存为 PDF”插件可以正常工作。

    因此,我最终编写了一个包含 Word 多线程自动化的服务。 Word 的几个实例是自动化的,可以转换文档并保存结果。包装器代码将拾取转换后的文档并将其作为结果传递。

    这涉及到一些努力,但这是我能找到的唯一解决方案,可以满足当时的所有业务需求。

    【讨论】:

    • 这种方法肯定会提供最好的 PDF 质量,因为目前 Word 是可以最好地呈现 .doc 文件的应用程序。然而,让 Word 在无人看管的环境中工作是很棘手的。
    • 我们需要类似的东西 - doc 到 tiff 转换器,对渲染近似有非常严格的要求。经过一长串寻找独立库的尝试后,我最终得到了相同的结果 - 一个围绕服务器端(无人值守)Word 实例的包装器,将提供的文档打印为 PDF。是的,在无人看管的情况下运行 Word(或任何办公应用程序)很棘手,但可行。我们的已经运行了好几年,没有任何问题
    • 我想我在 codeproject 上看到了一篇关于 Word2007 PDF 的文章。问题是我们无法在客户端机器上安装 Word。目前,我们在运行使用 OpenOffice 的 Windows 服务时做了类似的事情,问题是每隔一段时间就会有一个 rouge .DOC 导致 OpenOffice 挂起,这意味着我们中的一个人正在远程重新启动它。
    • 请务必查看 Microsoft 的运行时许可条款。几年前,不允许任何 Office 应用程序在服务器环境中运行。从那时起,许可条款可能已更改...
    【解决方案4】:

    多年来,我们使用了许多不同的 PDF 生成器和转换器,发现 Aspose 组件提供了很大的灵活性和无故障使用。如果您的应用程序是使用 ASP.NET 构建的,那么 Aspose 组件也是中等信任友好的。

    更多信息见:

    Aspose.Pdf for .NET
    Aspose.Pdf for .NET - File Conversion

    【讨论】:

    • 谢谢 - 我去看看。
    【解决方案5】:

    过去,我使用此处提供的PDF X Change Drivers 取得了一些成功。它不是世界上最好的网站,但技术不错。

    尽管如果您不打算在机器上安装 Office 版本进行转换,这将无济于事,因为这里的技巧是从应用程序打印到生成文件的 PDF 驱动程序。

    【讨论】:

      【解决方案6】:

      Nemo PDF 是个不错的选择。

      【讨论】:

      • Nemo PDF 不是 SDK,它是一个用户驱动的工具。
      【解决方案7】:

      我猜您可能已经找到了一些东西,但如果您还没有找到,请参见下文。我应该否认我为生产我提到的产品的公司工作。

      我们提供名为 EasyPDF SDK 的商业 SDK,可将 Microsoft Word 文档(以及许多其他格式)转换为 PDF。如果您有兴趣,请查看 pdfonline.com 以获取试用版。它是一个基于打印机驱动程序的工具,需要安装 Microsoft Word,并且是线程安全的,并且在服务器上广泛使用。支持 ASP.NET。您应该不会遇到挂起转换的问题,因为您可以设置超时并且可以捕获异常,以防给定的转换由于某种原因停止。

      API 是相当高级的,对于基本的服务器端 ASP.NET 转换看起来像这样:

      Loader oLoader = new Loader();
      
      Printer oPrinter = (Printer)oLoader.LoadObject("easyPDF.Printer.6");
      
      WordPrintJob oPrintJob = oPrinter.WordPrintJob;
      oPrintJob.PrintOut(input, output);
      

      干杯

      【讨论】:

      • 感谢您的回复 - 唯一的问题是安装 Microsoft Word。
      【解决方案8】:

      除非您追求完美的转换保真度或需要支持其他文件格式,否则 Aspose.words 可能是最好的方法。他们有一些渲染问题,例如忽略脚注、文本流和浮动对象的问题,但是除了基于 MS-Word 的库之外,没有库可以让您更接近。

      话虽如此,如果您追求完美的保真度或需要支持其他文件格式,请查看我开发的产品,它允许通过基于 Web 服务的界面转换所有主要的基于 Office 的格式。

      正如上面的一些回复所表明的那样,自己编写是可行的,但是当它需要在 32/64bit/Win2K8/Win2K3 系统上以无人值守的方式从服务器运行时,你可能会比产品做得更糟@ 987654321@.

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-12-07
        • 2011-01-25
        • 2011-08-01
        • 2021-10-14
        • 2012-02-15
        • 1970-01-01
        • 2016-07-03
        相关资源
        最近更新 更多