下午好,我想在按鈕中呼叫一個函式來將影像頁面添加到檔案中。這里在下面提供的這個方法中。
@IBAction func mergeButton(_ sender: Any) {
let newDocument = PDFDocument()
let image = UIImage(systemName: "image")
let page = PDFPage(image: image!)
newDocument.insert(page!, at: 0)
newPDF.document = newDocument
}
這是我的全部代碼。我打算通過選擇器上傳影像,然后將其添加到 pdf 檔案中。誰能幫我糾正錯誤?下面是我的整個代碼
import UIKit
import PDFKit
import MobileCoreServices
class ViewController: UIViewController,UINavigationControllerDelegate, UIImagePickerControllerDelegate,PDFViewDelegate {
let pdf = PDFView()
let newPDF = PDFView()
@IBOutlet weak var pdfImage: UIView!
@IBOutlet weak var imageGallery: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
pdfImage.addSubview(pdf)
mergeFile.addSubview(newPDF)
guard let url = Bundle.main.url(forResource: "foglio", withExtension: "pdf") else {
return
}
guard let document = PDFDocument(url: url) else {return }
pdf.document = document
pdf.autoScales = true
pdf.delegate = self
newPDF.delegate = self
}
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
pdf.frame = pdfImage.bounds
pdf.autoresizingMask = [.flexibleWidth, .flexibleHeight]
newPDF.frame = mergeFile.bounds
newPDF.autoresizingMask = [.flexibleWidth, .flexibleHeight]
}
@IBOutlet weak var mergeFile: UIView!
@IBAction func mergeButton(_ sender: Any) {
let newDocument = PDFDocument()
let image = UIImage(systemName: "image")
let page = PDFPage(image: image!)
newDocument.insert(page!, at: 0)
newPDF.document = newDocument
}
@IBAction func ImageUpdate(_ sender: Any) {
let picker = UIImagePickerController()
picker.delegate = self
picker.sourceType = .photoLibrary
present(picker, animated: true, completion: nil)
}
private func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
if let image = info[UIImagePickerController.InfoKey.originalImage.rawValue] as? UIImage {
imageGallery.image = image
}
self.dismiss(animated: true, completion: nil)
}
func imagePickerControllerDidCancel(_ picker: UIImagePickerController) {
self.dismiss(animated: true, completion: nil)
}
}
uj5u.com熱心網友回復:
嘗試這樣的事情:
let newDocument = PDFDocument()
if let image = UIImage(named: "image"),
let page = PDFPage(image: image) {
newDocument.insert(page, at: 0)
newPDF.document = newDocument
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/416169.html
標籤:
上一篇:按自定義順序運行Pytest類
