Skip to content

Instantly share code, notes, and snippets.

@derickito
Last active October 29, 2024 04:32
Show Gist options
  • Save derickito/ac332db155ffbf0cff712d1680bd9fc0 to your computer and use it in GitHub Desktop.
Save derickito/ac332db155ffbf0cff712d1680bd9fc0 to your computer and use it in GitHub Desktop.
iOS PDFKit: How to add a highlight annotation
override func viewDidLoad() {
createMenu()
}
private func createMenu() {
let highlightItem = UIMenuItem(title: "Highlight", action: #selector(highlight(_:)))
UIMenuController.shared.menuItems = [highlightItem]
}
@objc private func highlight(_ sender: UIMenuController?) {
guard let currentSelection = pdfView.currentSelection else { return }
let selections = currentSelection.selectionsByLine()
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
page.addAnnotation(highlight)
}
pdfView.clearSelection()
}
@msuleman0100
Copy link

Thanks a lot for this piece of code buddy, it helped my like a life-saving-jacket 😄
Thanks for this contribution

@hameji
Copy link

hameji commented Jun 5, 2023

actually it is a japanese Page.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment