相关疑难解决方法(0)

使用 PDFKit 删除突出显示注释

我使用 swift 和 PDFKit 成功地将突出显示注释添加到 pdf 中,但我无法弄清楚如何让用户再次删除突出显示。

用户可以正常选择文本,然后从 UIMenu 中选择“突出显示”或“删除突出显示”。

为了在选择文本时自定义 pdfView,我更改了显示的菜单 - 首先删除默认操作:

extension PDFView {
    override public func canPerformAction(_ action: Selector, withSender sender: Any?) -> Bool {
        return false
    }
}
Run Code Online (Sandbox Code Playgroud)

然后在 viewDidLoad() 中我设置了自定义 UIMenuItems:

let menuItem1 = UIMenuItem(title: "Highlight", action: #selector(highlightSelection(_:)))        
let menuItem2 = UIMenuItem(title: "Remove highlight", action: #selector(removeHighlightSelection(_:)))
UIMenuController.shared.menuItems = [menuItem1, menuItem2]
Run Code Online (Sandbox Code Playgroud)

选择突出显示时:

@objc func highlightSelection(_ sender: UIMenuItem) {
            let selections = pdfViewer.currentSelection?.selectionsByLine()
            guard let page = selections?.first?.pages.first else { return }

            selections?.forEach({ selection in
                let …
Run Code Online (Sandbox Code Playgroud)

pdf annotations highlight pdfkit swift

0
推荐指数
1
解决办法
2294
查看次数

标签 统计

annotations ×1

highlight ×1

pdf ×1

pdfkit ×1

swift ×1