PDFView не может перейти на следующую страницу - PullRequest
0 голосов
/ 29 июня 2018

Код:

if let path = Bundle.main.path(forResource: "test", ofType: "pdf") {
            let url = URL(fileURLWithPath: path)
            if let pdfDocument = PDFDocument(url: url) {
                pdfView.displayMode = .singlePage
                pdfView.autoScales = true
                pdfView.displayDirection = .horizontal
                pdfView.document = pdfDocument
            }
        }

Я пытаюсь показать файл pdf в app.it работает нормально. Как реализовать функции горизонтальной прокрутки (страница за страницей) и функции поиска (например, выделенное слово для поиска). Любая помощь будет добавлена. Спасибо заранее

Ответы [ 2 ]

0 голосов
/ 29 июня 2018

попробуйте этот код для поиска строки. В этой строке beginFindString вы можете установить строку

var searchedString: PDFSelection?
override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
        self.document?.beginFindString("StringName", withOptions: .caseInsensitive)        
}

func documentDidEndDocumentFind(_ notification: Notification) {
    pdfView.setCurrentSelection(searchedString, animate: true)
}

func documentDidFindMatch(_ notification: Notification) {
    if let selection = notification.userInfo?.first?.value as? PDFSelection {
        selection.color = .Red
        if searchedString == nil {
            // The first found item sets the object.
            searchedString = selection
        } else {
            // All other found selection will be nested
            searchedString!.add(selection)
        }
    }
}
0 голосов
/ 29 июня 2018

вам нужно добавить эту строку кода:

pdfView.usePageViewController(true, withViewOptions: nil)

**** UPDATE **

PDFDocument . есть некоторые уведомления о поиске. Посмотри.

...