首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用PDFKit提取PDF Highlight

使用PDFKit提取PDF Highlight
EN

Stack Overflow用户
提问于 2019-10-02 06:46:06
回答 1查看 281关注 0票数 1

我正在尝试在一个macOS应用程序中使用PDFkit提取所有的亮点。下面是我使用的代码:

代码语言:javascript
复制
guard let path = item.filePath else { return }

let document = PDFDocument(url: URL(fileURLWithPath: path))

guard let numberOfPage = document?.pageCount else { return }

for i in 0...numberOfPage - 1 {
   let pages = document?.page(at: i)
   guard let annotations = pages?.annotations else { continue }

   for annotation in annotations {
      if annotation.type == "Highlight" {
        print(annotation.contents)
        self.annotations.append(annotation)
      }
   }
}

问题是print(annotation.contents)总是返回"Optional("")“。我试了几个pdf,结果总是一样的。问题是,如果我执行print(annotation.color),它将返回给定高光的正确颜色。

是不是我的代码有什么地方出了问题,我还没弄清楚?或者这是PDFKit的正常行为?

EN

回答 1

Stack Overflow用户

发布于 2019-10-03 15:19:33

使用PDFAnnotationSubtype.highlight.rawValue获取高光的关键点。如果您打印该值,您将看到它是/Highlight。即使我们现在知道了关键字,您仍然应该使用枚举值,以防PDFKit中发生任何变化。

所以在你的情况下...

代码语言:javascript
复制
if annotation.type == PDFAnnotationSubtype.highlight.rawValue {

如果您对此感到困惑,请熟悉一下Enums and Raw Values.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58193213

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档