【发布时间】:2014-02-13 02:36:49
【问题描述】:
假设我在网络服务器上有一个 400MB 的 PDF,我希望 ipad 用户能够打开它并尽快开始查看它,而无需先完全下载文件。有哪些选择?
Safari 是否能够像这样流式传输大型 PDF?它可以在文件还在下载的同时开始显示第一页吗?
有没有办法构建一个原生应用程序来实现这一点?如果是这样,是否应该首先在服务器上“吐出”PDF?怎么样?
任何有关如何以友好的方式在 ipad 上打开大型 PDF 的提示,我们将不胜感激。如果 PDF 的索引是可访问的,则加分!
【问题讨论】:
-
这听起来可能很愚蠢,但是您可以让服务器将 pdf 分解为单独的 pdf 页面,然后在前端您可以一次下载 1 个,首先下载那里的多少页是,然后下载第一个,完成后下载第二个,然后在前端显示第一页,每隔几秒钟用户就会看到一个新页面进入。
-
'Linearized' 或 '为快速 Web 视图优化' PDF 正是出于这个原因而引入的 - “在文件显示第一页时仍在下载”,但似乎只有 Adobe 软件(阅读器和浏览器插件)可以利用此功能。
-
感谢两位的帮助!但是您能否提供有关每种解决方案的更多详细信息?例如,您如何自动逐页拆分 pdf 文件,并且仍然能够向用户显示目录,以便他可以定位特定页面(假设有 5000 页)?对于线性化 PDF,是否有文档列出了 ipad 上支持该功能的客户端?我看到适用于 ipad 的 Adobe Reader 无法在 ipad 1 上运行,是否有替代方案?另外,文件开始下载后是否可以访问 TOC?
-
至于“列出客户”——就像我说的,只有 Reader 会这样做。我已经看到声称,尽管线性化文件格式可能记录得很好(请谷歌并阅读官方(ISO)文档),但关于客户请求的详细信息没有记录得太彻底(hm-m ...) .另外,关于“只要文件开始下载就可以访问 TOC”,——不管它写了什么关于线性化,例如快速访问第一页,然后是第二页,以及链接等,据我所知,PDF 规范只写了第一页显示,仅此而已。
-
@electrotype 你找到解决方案了吗,我需要实现相同的。如果你知道请帮助我。非常感谢。
标签: ios ipad pdf streaming pdf-generation