【问题标题】:how to open pdf markup programmatically in ios 11如何在 ios 11 中以编程方式打开 pdf 标记
【发布时间】:2017-12-10 06:02:29
【问题描述】:

Markup as pdf 是 iOS 11 共享表中的一个新选项,我会在我的 UI 中为该操作提供一个按钮,以便当用户单击该按钮时,pdf 标记视图(参考下图)出现。

提前致谢

【问题讨论】:

    标签: ios iphone pdf beta ios11


    【解决方案1】:

    几个小时以来,我一直在努力寻找解决方案。 我介绍了 UIDocumentInteractionController、SFSafariViewController、UIActivityViewController、QLPreviewController。

    目前,无法以编程方式调用即时标记。

    唯一接近的解决方案是使用 UIActivityType.markupAsPDF 呈现 UIActivityViewController (Documentation link)

    func showMenu()
    {
        if let pdfUrl = Bundle.main.url(forResource: "Martin", withExtension: "pdf") {
            let activityController = UIActivityViewController(activityItems: [pdfUrl], applicationActivities:nil)
            ctra.excludedActivityTypes = [
                UIActivityType.postToFacebook,
                UIActivityType.postToTwitter,
                UIActivityType.postToWeibo,
                UIActivityType.message,
                UIActivityType.mail,
                UIActivityType.copyToPasteboard,
                UIActivityType.assignToContact,
                UIActivityType.saveToCameraRoll,
                UIActivityType.addToReadingList,
                UIActivityType.postToFlickr,
                UIActivityType.postToVimeo,
                UIActivityType.postToTencentWeibo,
                UIActivityType.airDrop,
                UIActivityType.openInIBooks,
        ]
        // These activity types shouldn't be excluded
        // UIActivityType.print,
        // UIActivityType.markupAsPDF
    
        self.present(activityController, animated: true, completion: nil)
        }
    }
    

    在扩展应用程序的底部,您将看到“创建 PDF”。

    附言

    正如您在以下屏幕截图中看到的,Apple 使用 QLPreviewController。 我试图展示 QLPreviewController,但它显示时没有即时标记按钮。 可能苹果稍后会为我们提供所需的 API,但我对此表示怀疑。

    【讨论】:

      猜你喜欢
      • 2018-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-24
      • 2020-11-29
      • 2011-12-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多