【问题标题】:How should I improve my PDF reading interface in iOS using swift? [closed]我应该如何使用 swift 在 iOS 中改进我的 PDF 阅读界面? [关闭]
【发布时间】:2015-09-13 18:50:28
【问题描述】:

我实际上已经创建了自己的 PDF 阅读器,但是,我使用了 UIWebView,虽然它确实加载了服务器端 PDF 并完成了将它们显示在屏幕上的工作,但我只是不认为它是阅读的最佳界面,并与 PDF 交互。例如,下面是我的 PDF 阅读器通过 UIWebView “复制”机制的示例:

它似乎更适合网络使用而不是阅读,因为它具有“定义”机制,并且扩展突出显示的动作根本不流畅。下面是 Dropbox iOS 应用 PDF 阅读器界面的示例:

如您所见,它没有“定义”机制,高亮机制更加流畅。另一个区别是内容格式。我的 UI 中的同一个 PDF 看起来像是从 Web 上取下来的,因为页面大小不同:

在他们的 UI 中,它的格式均匀,看起来像是为了阅读:

考虑到这一切,我想我的问题是,他们是使用 UIWebView 来创建这个界面还是使用常规 UIView?我应该如何处理我的 UI 以使其类似于 Dropbox 的 PDF 阅读器?

感谢任何建议。谢谢

【问题讨论】:

  • 我投票决定将此问题作为离题结束,因为它与编程无关,它可能会成为 ux.stackexchange.com 的主题
  • 您可以使用 QLPreviewController。如果你愿意,我可以发布一个例子。
  • 是的,请@LeoDabus
  • 您需要先将文件保存到磁盘
  • 文件在项目中?这是@LeoDabus

标签: ios swift pdf uiwebview


【解决方案1】:

适用于 iOS 的 Dropbox 应用使用商业版 PSPDFKit PDF SDK,适用于 iOS 和 Android。我知道这一点是因为我们与他们合作并帮助他们将我们的 SDK 集成到他们的产品中。

PSPDFKit 不是基于UIWebView,而是完全使用我们自己的渲染引擎和视图层次结构从头开始构建自己。在过去的 4 年里,我们一直在努力解决这个问题,并且即将发布另一个主要版本。

文本选择特别棘手,因为您需要找到一种方法来计算所有字形坐标,然后根据各个字形坐标估算单词、行和文本块的位置。 PDF 标准实际上是为打印而设计的,因此提取流文本并使内容可选择需要相当大的努力。

【讨论】:

    猜你喜欢
    • 2012-05-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-23
    • 2023-03-19
    相关资源
    最近更新 更多