【问题标题】:Open PDF in PDF Reader from AIR Desktop Application从 AIR 桌面应用程序在 PDF 阅读器中打开 PDF
【发布时间】:2013-09-26 16:08:13
【问题描述】:

我一直在尝试从使用 Adob​​e Flash CS 6 创建的 Adob​​e Air 桌面应用程序中打开一个 pdf 文档。

我使用了这个代码:

import flash.filesystem.*;

var thePDF = "mypdf.pdf";
var realFile:File = File.applicationDirectory.resolvePath(thePDF);
var destination:File = File.documentsDirectory;
destination = destination.resolvePath(thePDF);
realFile.copyTo(destination,true);
destination.openWithDefaultApplication();

当我在 Flash CS6 中进行测试时,这工作正常,但当我在 .exe 文件中发布应用程序时停止工作(在 MACOS 中与 .app 文件相同)。

我尝试了在 google 中找到的所有资源,但没有任何效果!!!

实际上,我从名为 Shu (com.cjt.Shu) 的 AS3 库中找到了一个代码,但网络中没有任何文档记录。

如果有人知道这个 Shu 或其他一些替代方案,甚至没有开源。请告诉我。

提前谢谢大家,来自墨西哥的问候。

【问题讨论】:

  • 我看不出您的代码有什么问题 - 您收到错误消息了吗?
  • 没有错误信息,实际上如果你在 flash cs 中尝试它可以工作,问题是当应用程序被 pulish 并且你执行时,没有任何反应。
  • 尝试添加跟踪(destination.exists);在 copyTo 之后查看 pdf 是否确实存在。 pdf首先如何添加到应用程序目录中?

标签: actionscript-3 flash pdf air


【解决方案1】:

您确定您的 PDF 内容在实际发布的 AIR 文件夹中吗? PDF 似乎超出范围。

编辑:这里有一些代码可以解释更多:

file1.addEventListener(MouseEvent.CLICK, pdf1, false, 0, true);

function pdf1(e:MouseEvent):void{
navigateToURL(new URLRequest(File.applicationDirectory.nativePath + "/files/My_PDF_File.pdf" ));
}

仔细检查目标文件的路径。就我而言,它位于“files”文件夹中我已发布的 AIR 文件夹的本地文件夹中。

希望对你有帮助。

【讨论】:

  • 这并没有提供问题的答案。要批评或要求作者澄清,请在他们的帖子下方发表评论 - 您可以随时评论自己的帖子,一旦您有足够的reputation,您就可以comment on any post
  • 感谢您的批评。添加了一些代码以进一步解释。问候!
猜你喜欢
  • 1970-01-01
  • 2012-04-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-04
  • 1970-01-01
相关资源
最近更新 更多