課題のために Mac (IOS ではない) 用の PDF ビューアを作成しようとしていますが、実際に PDF を表示する方法がわかりません。PDFView と Quartz を使用する必要があります。このトピックで見たほとんどのチュートリアルでは、次のようなものを使用しています。
view.setDocument(pdf)
しかし、Swiftは、PDFViewにはメンバーsetDocumentがないと言っています。ここでドキュメントを調べましたが、リモートでも機能するように見える唯一のものはsetCurrentSelectionだったので、試しました:
import Cocoa
import Quartz
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
@IBOutlet weak var window: NSWindow!
@IBOutlet weak var PDFV: PDFView!
func applicationDidFinishLaunching(_ aNotification: Notification) {
let fileURL:URL = (Bundle.main.url(forResource: "example", withExtension: "pdf")! as NSURL) as URL
let pdfDocument:PDFDocument = PDFDocument.self.init(url: fileURL as URL)!
let thing:PDFSelection = PDFSelection.self.init(document: pdfDocument)
PDFV.setCurrentSelection(thing, animate: true)
// Insert code here to initialize your application
}
func applicationWillTerminate(_ aNotification: Notification) {
// Insert code here to tear down your application
}
}
しかし、これを実行するとウィンドウがクラッシュし、xcode には次のように表示されます: Thread 1: EXC_BAD_INSTRUCTION(code=EXC_I386_INVOP, subcode 0x0)。私が実際に何を使うつもりなのか誰か知っていますか?