在Firemonkey应用程序中显示PDF

时间:2013-03-12 11:47:59

标签: delphi pdf delphi-xe3 firemonkey-fm2

如何在Firemonkey应用程序中查看PDF文件?

我尝试将Adobe reader ActiveX添加到我的项目中,但是我遇到了错误!!

3 个答案:

答案 0 :(得分:3)

我目前使用Adobe Pdf Reader Active X在firemonkey中显示pdf,这里是代码:

ACRO := TAcroPDF.Create( Self );
ACRO.Width := Width;
ACRO.Height := Height;
ACRO.ParentWindow := FmxHandleToHWND( Self.Handle );
ACRO.LoadFile( 'C:\ProgramData\teste.PDF' );
// if focus no set, user need click on activeX component
ACRO.SetFocus;

注意:您需要添加使用“FMX.PlatForm.Win”并将activeX导入您的项目。通常,文件生成为“AcroPDFLib_TLB.pas”,您需要将其添加到使用中。

答案 1 :(得分:2)

您无法在firemonkey中托管ActiveX控件。我知道Firemonkey没有PDF显示组件,但是如果有的话,它必须单独实现,或者在引擎盖下有很多条件定义,因此它可以在Mac OS X和Windows上运行。

我知道您可以将一个Firemonkey表单放入VCL应用程序但不知道任何可以反过来的方法。简而言之,没有简单的方法可以做到这一点,最短的路径是编写自己的组件,这必须以某种方式托管PDF查看器作为Windows上的OLE对象或ActiveX控件,并以其他方式实现Mac OS X。

答案 2 :(得分:2)

3个解决方案:

  1. 如果您必须嵌入:尝试使用嵌入式浏览器。

  2. 否则,您可以随时启动外部查看器。

  3. 最糟糕的情况:将您的pdf转换为html