【问题标题】:What is the best way to display a PDF file in Delphi 2009 [closed]在 Delphi 2009 中显示 PDF 文件的最佳方法是什么[关闭]
【发布时间】:2010-10-12 01:47:42
【问题描述】:

我应该使用什么组件在 Delphi 2009 应用程序中显示 PDF 文件?

编辑:

我一直在使用 Synactis 的 PDF Viewer - 一个非常不错的免费 PDF 查看器 但它不支持 Delphi 2009。

所以我需要在产品之外设计它

【问题讨论】:

    标签: delphi pdf delphi-2009 components


    【解决方案1】:

    可以使用 Twebbrowser 或 Bsalsa Web 文档,对文件路径进行 URL 编码并将其作为 Web 文档传递 - 它会在浏览器区域中加载默认的 PDF 应用程序。

    【讨论】:

      【解决方案2】:

      在 Delphi 中嵌入原始 Acrobat Reader ActiveX 是最好的方式,而且是免费的。 如果你想创建PDF,那成本很高。

      【讨论】:

      • 你添加到一个 8 个月前的帖子中只是为了说别人 8 个月前做过的同样的事情吗?
      • @Ken 我猜他确实补充说它是免费的。
      【解决方案3】:

      我没有用过 wptools PDF 查看器,但我可以说他们的其他 PDF 工具是一流的。

      【讨论】:

        【解决方案4】:

        WPCubed (http://wptools.de/) 提供带有免版税分发许可证的 WPViewPDF 工具和 Delphi 支持 - 4,5,6,7, 2005, 2006, 2007, BCB 5,6,2006, 2007

        【讨论】:

          【解决方案5】:

          如果您只想显示一个 pdf,为什么不启动用户安装的应用程序来查看 pdf 文件呢?这样他们就不会因为您的程序而忽略他们的选择而烦恼,并且他们也会已经熟悉该程序。

          其他选项包括使用 Kris De Decker 建议的 Adob​​e 的 acrobat 阅读器插件或我相信其他查看器也提供的插件。这可能会为您提供更多控制权,但您肯定也会发现控制并不像您希望的那样彻底。

          【讨论】:

            【解决方案6】:

            我感觉越来越多的用户更喜欢 acrobat reader 的替代品,所以强迫他们安装 acrobat 来使用你的程序是个坏主意。

            Gnistice PDFtoolkit 的 ProPlus 版本可让您显示 pdf 文件。 QuickPDFLibrary 也是如此。我敢肯定还有更多。

            在用户喜欢的 pdf 查看器中启动文件可能是更好地控制打印等的第二种选择。

            【讨论】:

            • Acrobar 阅读器从 Delphi 窃取焦点,所以你也可能得到奇怪的效果。
            【解决方案7】:

            我们在 Delphi 应用程序中嵌入了 Acrobat Reader。 看看这篇文章“How to embed Adobe Acrobat into your application”。 将 Acrobat Reader ActiveX 组件添加到表单后,您可以使用以下代码:

            procedure TForm1.Button1Click(Sender: TObject); 
            begin
              // This example assumes that you have a TOpenDialog
              // and TPdf dropped onto your form
              OpenDialog1.Filter := 'PDF Files (*.pdf)|*.pdf';
              if OpenDialog1.Execute then
                Pdf1.src := OpenDialog1.FileName;
            end;
            

            那里有原生 Delphi 组件,但嵌入 Acrobat Reader 组件可以满足我们的需求。

            【讨论】:

              猜你喜欢
              • 2011-01-22
              • 1970-01-01
              • 2010-09-08
              • 2020-12-15
              • 1970-01-01
              • 2011-02-12
              • 1970-01-01
              • 2011-04-10
              相关资源
              最近更新 更多