這是我目前正在做的。如何在Swift上繪製PDF文件?
首先,我得到的文件。接下來,我創建一個PDF視圖並將文檔分配給視圖。然後我創建一個視圖並在視圖中進行繪製,然後將視圖添加到PDFView中作爲子視圖。然後我將PDFView轉換爲數據,然後轉換爲PDF文檔。由於我在PDF的第一頁上執行繪圖,因此我從原始PDF中刪除第一頁,插入新的第一頁並返回文檔。
guard let document = PDFDocument(url: url) else { return nil }
guard let page = document.page(at: 0) else { return nil }
let pageBounds = page.bounds(for: .mediaBox)
let pdfView = PDFView(frame: pageBounds)
pdfView.document = document
pdfView.enclosingScrollView?.autohidesScrollers = true
let view = /// code for subview that I am drawing on
pdfView.addSubview(view)
let data = pdfView.dataWithPDF(inside: pageBounds)
guard let pdf = PDFDocument(data: data) else { return nil }
document.removePage(at: 0)
document.insert(pdf.page(at: 0)!, at: 0)
return document
有沒有更好的方法來做到這一點?要添加皺紋,我的最終產品有一個奇怪的滾動條圖像(請參閱屏幕截圖)。我嘗試添加自動隱藏滾動條& enclosingScrollView?.hasVerticalScroller = false,但都沒有隱藏滾動條。
提前致謝!