Я использую это
Extension UIView {
// Export pdf from Save pdf in drectory and return pdf file path
func exportAsPdfFromView() -> String {
let pdfPageFrame = self.bounds
let pdfData = NSMutableData()
UIGraphicsBeginPDFContextToData(pdfData, pdfPageFrame, nil)
UIGraphicsBeginPDFPageWithInfo(pdfPageFrame, nil)
guard let pdfContext = UIGraphicsGetCurrentContext() else { return "" }
self.layer.render(in: pdfContext)
UIGraphicsEndPDFContext()
return self.saveViewPdf(data: pdfData)
}
// Save pdf file in document directory
func saveViewPdf(data: NSMutableData) -> String {
let paths = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)
let docDirectoryPath = paths[0]
let pdfPath = docDirectoryPath.appendingPathComponent("viewPdf.pdf")
if data.write(to: pdfPath, atomically: true) {
return pdfPath.path
} else {
return ""
}
}
}
и
let pdfFilePath = self.view.exportAsPdfFromView()
print(pdfFilePath)
для создания и сохранения PDF вида. Он отлично работает и сохраняет PDF. Вид - 592Ширина - 842Высота. Этот код делает PDF и сохраняет его в месте расположения документов. Но качество PDF низкое. (Не супер низкое, но все же низкое качество pdf)
Как изменить качество PDF при преобразовании представления в PDF? Кроме того, как я могу сохранить его в каталоге приложения? или базовый каталог в телефоне?
Также, как я могу добавить вторую страницу в PDF? В настоящее время он создает 2 отдельных файла PDF. Как я могу сделать это в одном PDF с 2 страницами?