【发布时间】:2015-05-16 14:14:55
【问题描述】:
所以我正在完成一个 AIR 应用程序,它将同时部署在 Android 和 iOS 手机上。
我想附上一本详细解释如何使用该应用程序的手册。
首先,我在WORD上用英语、法语和西班牙语编写了使用说明书。 事实证明,每份文件重 8Mo,有 20 页和十几张图片。 调整 DPI,每个转换为 PDF 的文件现在重 0.5Mo。
我的目标是:如何将本手册包含在我的应用程序中,最好没有外部阅读器和互联网连接,并具有流畅直观的文档导航。
我在网上的研究使我找到了很多解决方案,我想在这里分享它们,并尽可能多地收集你的想法和意见。
1 在我的应用程序中包含一个 PDF 阅读器来阅读内部 PDF 文件(来自应用程序存储目录的 PDF)
优点:用户始终可以使用 pdf,无需互联网连接或外部阅读器。
缺点:鉴于下面列出的 ANE 仅适用于一个操作系统,我需要为 android 和 iOS 环境编写不同的代码。也不确定下面的 ANE 是否与最新的 64 位操作系统版本兼容(有些在过去 2 年没有更新)。
链接:
适用于 iOS 的 PDF Reader ANE(免费):(抱歉,声誉不足以发布链接)(某些论坛上报告了一些应用程序崩溃)
适用于 iOS 的 PDF 阅读器 ANE(10 美元):(抱歉,声誉不足以发布链接)
适用于 Android 的 PDF Reader ANE(免费):(抱歉,链接发布的声誉不够)
PurePDF(不是 ANE,而是 AS3 类,不确定是否与两种操作系统兼容):(对不起,声誉不足以发布链接)
有人用过 PurePDF 吗?由于它是 100% 的 AS3 代码,它应该可以在所有操作系统上运行,听起来很有希望。但是我不知道怎么用!!
2 启动外部 PDF 阅读器以阅读内部 PDF 文件(在应用内)。
优点:使用 openWithDefaultApplication() 方法,相同的代码可能适用于两个操作系统。
论坛上的一些用户发现问题指向内部 PDF 文件,尤其是在手机上。
缺点:显然,如果用户没有安装 PDF 阅读器,他将无法阅读文档。
一些 ANE 也可用于实现此目标:
ANDROID:PDF 阅读器 ANE(在 Android 上打开默认 PDF 阅读器 - 5 美元)(抱歉,声誉不足以发布链接)
ANDROID:适用于 Android 的 PDF Reader ANE(免费)(抱歉,声誉不足以发布链接)
ANDROID:DocLauncher ANE(7 美元,不再可用)(抱歉,声誉不足以发布链接)
iOS:ANE DEVICE FILE UTIL(免费并支持 iOS 64 位)(抱歉,链接发布的声誉不够)
- 将我的 PDF 转换为 SWF,然后在我的应用中显示。
使用特殊工具,我将我的 PDF 转换为 SWF,然后将其嵌入到我的 IPA 或 APK 中。
优点:它适用于桌面。此外,以下一些工具还提供导航界面和缩放选项。
缺点:我还没有弄清楚如何将 SWF 嵌入到我的最终 IPA 或 APK 中(在将 SWF 添加到 Flash CS6 FLA 库之后),而且导航界面无法自定义以适应移动环境。
链接: SWF 工具中的 PDF2SWF(免费)(抱歉,声誉不足以发布链接)
PDFMate PDF 转换器(免费,专业版 40 美元)(对不起,声誉不足以发布链接)
4。 创建一个包含很多帧的动画片段 (+50);然后将我的文档内容划分为框架并将我的文本粘贴到 textFields 中。然后添加一些基本的导航按钮。
优点:100% 多平台解决方案。
缺点:耗时。您可能会丢失布局。您失去了 PDF 阅读器中常见的缩放功能。上下滚动不流畅。 Textfield内的文本长度是有限的等等。
5。 启动外部 PDF 阅读器以读取外部 PDF 文件(存储在服务器中)。
优点:也许相同的代码可能适用于两个操作系统。
缺点:用户需要互联网连接和安装的 PDF 阅读器。我将不得不为远程存储服务付费,这将(可能)施加下载限制。 在 iOS 上:可以通过 navigateToUrl 打开在线 PDF,然后将其导入 iBooks。
6。 使用 StageWebView 类(或 StageWebViewBridge 类)显示 HTML 文件(将我的 PDF 转换为 HTML 之后)。
缺点:在最终的 IPA 或 APK 文件中嵌入带有图片的 HTML 文件似乎很棘手。
具有讽刺意味的是,ADOBE 是 PDF 格式的创建者,而 AIR 正在进行第 17 次重大更新。
但据我所知,AIR 没有提供简单且令人满意的解决方案来在所有平台上显示 PDF。
你们中是否有人知道显示 pdf 的多平台解决方案,具有良好的性能(平滑滚动和缩放)?
读者应该有翻页、基本控件(下一页/上一页等),并且应该阅读本地存储或在线的 pdf(作为最后的手段)。
等待您的回复!
BR
【问题讨论】:
-
虽然你的问题还不错,但征求意见是违反规则的,超出了 StackOverflow 的范围。
-
对不起,如果我的帖子听起来像是一个分享意见的邀请。但这确实是一个问题,它应该是这样的:“谁找到了一个真正的多平台解决方案,可以在 AIR for mobile 中显示带有导航界面的长而“丰富”的文档?
-
您只需在常规 AIR/Flash 中显示您的手册。您将手册放在 xml 中,加载 xml,在文本字段中显示文本。这是移动设备的关键部分——您必须将所有内容都转换为位图。因此,您使用 mcManualText 并将其绘制到位图(制作矢量动画剪辑的位图副本),添加位图版本,删除矢量版本,位图以 60fps 平滑滚动、移动。
-
@moot:感谢分享线索。我很容易找到一些将我的 PDF 转换为 XML 的工具。问题是:我发现的所有 AS3-XML 教程都涉及从加载的 XML 文件中检索和显示数据。而我正在寻找一种方法来显示整个文本文档,保留文本格式,并带有缩放和导航按钮。您仍然认为您的建议是可行的方法吗?谢谢!!
-
使用 XML 传递或存储数据。如果您的应用程序不超过一页,则无需使用 XML。只需在影片剪辑中手动创建您的文档,使其看起来像您想要的那样,然后将其绘制到位图图块(位图不应大于屏幕尺寸)。一旦你只有位图,位图动画剪辑将平滑移动。我可以展示平铺的示例代码。如果您想了解 gpu 优化,gotoandlearn.com 有很棒的视频教程。
标签: android actionscript-3 pdf air