我正在编写一个允许创建注释的 PDF 查看器。我已经想出了如何创建跨越当前选定文本的(标记)注释:
let pdfView = PDFView()
let selectionsByLine = pdfView.currentSelection.selectionsByLine()
for line in selectionsByLine {
for page in line.pages {
let bounds = line.bounds(for: page)
let annotation = PDFAnnotation(bounds: bounds,
forType: .highlight,
withProperties: [:])
page.addAnnotation(annotation)
}
}
但我想允许用户通过选择它来选择一个工具和标记文本。到目前为止,我已经想到了两种方法:
- 我想知道我是否可以子类
PDFView
化并以某种方式捕获选择文本时触发的事件/手势。 - 我也想用
UIPanGestureRecognizer
它来识别“选择”,但我需要禁用默认选择,或者以某种方式重新设置它的样式。
我对 UIKit 不太熟悉,所以我希望有人能指出我正确的方向:D