【问题标题】:How can I convert a word document to pdf in delphi without using OLE?如何在不使用 OLE 的情况下在 delphi 中将 word 文档转换为 pdf?
【发布时间】:2011-08-30 23:43:26
【问题描述】:

我有许多 word(2003 年和 2010 年)文档被发送到我想转换为 pdf 格式的服务器。 由于应用程序作为服务在服务器上运行,我无法使用 Office 对其进行转换,或打印到 pdf 打印机。

我发现唯一可行的商业图书馆是activePDF,但那是 com。

还有其他想法吗?

【问题讨论】:

  • 它位于服务器上的事实与您可以使用 Office 有什么关系?如果是局域网服务器,应该没有问题。如果它是一个网络服务器,你可以将它传输到本地驱动器进行转换,然后再次上传,不是吗? (是的,它不优雅。)我不明白什么吗?
  • @Robert:我的猜测是文档被发送到服务器(正如 OP 所说),并且需要进行转换的应用程序在该服务器上,并且该服务器没有安装 MS Office。 ..
  • 应用作为服务在服务器上运行。除非有用户登录,否则 Office 无法工作,即使这样它也是一个雷区。
  • com 主要是一个皮塔饼。如果必须,我会使用它,但直接的 dll 或 delphi 解决方案会更好
  • @Robert Frank:COM 不是问题。这是不支持从服务(例如 ASP.NET)自动化 Word/Excel 并且有许多问题。

标签: delphi


【解决方案1】:

OpenOffice 可以打开 Word 文档并保存为 PDF。 OpenOffice 为远程控制提供了一种特殊的服务器模式。

一些信息可以在这里找到How can I use OpenOffice in server mode as a multithreaded service?

更新:

一种方法是调用 JODConverter

java -jar lib/jodconverter-core-3.0-beta-4.jar test.odt test.pdf

(请注意,即使这是指Java,也可以从Delphi中执行此行;)

jodconverter 入门页面http://code.google.com/p/jodconverter/wiki/GettingStarted 提供了其他信息,例如 OpenOffice 在服务器模式下启动,打开一个端口 2002,然后可用于传输转换作业。它还提到了一个 Web 应用程序,可以从 Delphi 客户端使用。

在一些 Java 开发人员的帮助下,这可用于构建可靠的文档转换器,而无需在 Delphi 中重新发明整个轮子。

【讨论】:

【解决方案2】:

你能在服务器上安装微软的免费“Word Viewer”吗?如果是这样,并且如果您可以将pdf打印驱动程序放在服务器上,那么您可以在服务器上打印为pdf:

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=4

【讨论】:

    猜你喜欢
    • 2013-06-07
    • 2023-03-04
    • 2018-06-03
    • 2012-08-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-10
    • 1970-01-01
    相关资源
    最近更新 更多