当前位置: 首页 > 面试题库 >

苹果PDFKit上的高亮注释错误

谈灵均
2023-03-14
问题内容

我在iOS上使用PDFKit突出显示文本(PDF文件)。我通过创建PDFAnnotation并将其添加到选定的文本区域来实现。我想精确地突出显示所选区域,但它始终覆盖整行,如下图所示。如何仅为选定区域创建注释?

我的代码:

        let highlight = PDFAnnotation(bounds: selectionText.bounds(for: page), forType: PDFAnnotationSubtype.highlight, withProperties: nil)
        highlight.color = highlightColor
        page.addAnnotation(highlight)

所选文字

高亮文字


问题答案:

PDFSelection bounds(forPage:)方法返回一个矩形以满足整个选择区域。不是您情况下的最佳解决方案。

尝试使用selectionsByLine(),并为每个矩形添加单独的注释,以表示PDF中的每个选定行。例:

    let selections = pdfView.currentSelection?.selectionsByLine()
    // Simple scenario, assuming your pdf is single-page.
    guard let page = selections?.first?.pages.first else { return }

    selections?.forEach({ selection in
        let highlight = PDFAnnotation(bounds: selection.bounds(for: page), forType: .highlight, withProperties: nil)
        highlight.endLineStyle = .square
        highlight.color = UIColor.orange.withAlphaComponent(0.5)

        page.addAnnotation(highlight)
    })


 类似资料:
  • 用户可以正常选择文本,然后从UIMENU中选择“高亮显示”或“删除高亮显示”。 为了在选择文本时自定义pdfView,我已经更改了出现的菜单-首先通过删除默认操作: 然后在viewDidLoad()中设置了自定义UIMenuItems: 当我选择突出显示的文本时,我希望用户能够通过点击“删除突出显示”来删除突出显示注释,但我根本无法想出如何仅仅删除隐藏在所选文本“后面”的注释。 这段代码正在工作,

  • 设置 在本教程中,我将向您展示使用mitmproxy创造性地干扰Apple Game Center流量的简单性。要进行设置,请安装mitmproxy根证书。然后在桌面上启动mitmproxy,并将iPhone配置为将其用作代理。 看看游戏中心的流量 让我们先来看一下游戏中心的流量。我将在本教程中使用的游戏是《超级巨型蠕虫》(Super Mega Worm),这是一款用于iPhone的出色的复古启示

  • 问题内容: 当我将分析器与Edgengram(最小= 3,最大= 7,前面)+ term_vector = with_positions_offsets一起使用时 使用具有text =“ CouchDB”的文档 当我搜索“ couc”时 我的重点是“ cou”而不是“ couc” 看来我的重点只是在最小匹配令牌“ cou”上,而我希望是在精确令牌(如果可能)上或至少在找到的最长令牌上。 无需使用t

  • 我正在使用luminus进行试验,当我使用emacs m-x苹果酒连接连接到由lein run启动的repl时,所有新的luminus项目都会给我苹果酒版本/cider nrepl版本不匹配错误: 警告:CIDER的版本(0.14.0)与苹果酒-nrepl的版本(无)不匹配。东西会坏的! 如果我忽略自动启动的nrepl并使用M-x苹果酒插孔启动新的repl,我看不到错误。这是我通常在clojure

  • 我在iOS11中使用PDFKit开发了一个可以显示pdf文件添加注释的应用程序。现在我想给pdf页面添加一个图像注释,我认为注释子类型应该是stamp。但是在PDFKit中我找不到“”这样的属性来设置,唯一与戳注释相关的属性是。有人能帮忙吗?

  • 在我之前的基于英特尔的Mac电脑上,我曾经包括 在我的shell资源文件中。新的基于ARM的Apple芯片上的正确编译标志是什么?????似乎还没有很多资源,任何指针都非常感谢!