【问题标题】:Programmatically Print to PDF以编程方式打印到 PDF
【发布时间】:2012-10-03 14:26:28
【问题描述】:

我有一位客户想同时打印到 PDF 和物理打印机。他们不想从 PDF 打印物理副本,为什么我不知道。我尝试保存为临时 RTF 文件并调用 ShellExecute 以打印到 Adob​​e,但似乎不起作用。

有没有人可以在没有第三方 PDF 库的情况下从文件打印到 PDF?

更新:为了澄清一点,用户正在使用动态文档创建者。他们在 TRichEdit 的屏幕上看到预览文本,当前的打印方法是 TRichEdit 的打印命令 (RichEdit.Print)。对 pdf 的第一次尝试是将此丰富编辑的内容保存到 temp.rtf 文件中。

【问题讨论】:

标签: delphi delphi-xe2


【解决方案1】:

您可以使用我们的开源SynPdf library 将 RichEdit 内容导出为 pdf 文件。

有关示例代码,请参阅this forum post

它不需要安装任何打印机。如果需要,它将允许轻松打印预览、自定义页脚和页眉、附加标题或文本。

【讨论】:

  • 我不想使用 3rd 方库,但我认为这可能是票,因为它可以直接从 RTF 控件创建一个很棒的 pdf。
【解决方案2】:

我过去使用过 PDFForge。它安装了一台虚拟打印机,然后打印到这台打印机上会创建一个 PDF。但是,它还具有立即打印到物理打印机的选项,因此您将同时生成 PDF 和物理副本。如果对您有帮助,请参阅此处的文档:

http://www.pdfforge.org/content/print

【讨论】:

  • 这可能是要走的路,但我从命令行调用它并没有得到好的结果。仍在挖掘中
  • 我从来没有从命令行调用它。它可以轻松配置为自动操作,因此您和任何其他应用程序都可以正常打印,并自动创建 PDF 和物理副本。您有什么特别需要我们帮助解决的问题吗?
  • James,我认为 PDFCreator 的关键在于 根本不需要编写任何代码。您的客户可以安装该产品并使用您的程序的标准打印命令。客户将从列表中选择 PDFCreator 打印机,您的程序将打印到它,就像它打印到任何其他选定的打印机一样。如果客户还想要物理打印输出,那么他或她仍然可以选择 PDFCreator 打印机,但也可以选择其“打印”选项,此时 PDFCreator 将打印到选定的物理打印机。
猜你喜欢
  • 2010-09-14
  • 2011-07-24
  • 2012-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多