In Swift, I’m trying to generate a pdf version of a collectionView, and save that PDF to the temporary directory. However, I’m not sure if I’m doing it right, or actually even saving anything. Here’s my code:
func createPdfFromView(aView: UICollectionView, saveToDocumentsWithFileName fileName: String)
{
let pdfData = NSMutableData()
UIGraphicsBeginPDFContextToData(pdfData, gridView.bounds, nil)
UIGraphicsBeginPDFPage()
guard let pdfContext = UIGraphicsGetCurrentContext() else { return }
aView.layer.render(in: pdfContext)
UIGraphicsEndPDFContext()
let fileName = sampleClass.sampleStruct.samplePDF.rawValue
let template = NSURL(fileURLWithPath: NSTemporaryDirectory()).appendingPathComponent(fileName)
debugPrint(fileName)
pdfData.write(toFile: String (describing: template), atomically: true)
}
how can I do this?
Expert Answer
Answer for the given Question:
See the below code it may helps to you for the given problem statement
- func createPDFFromView(aView: NSView, saveToDocumentWithFileName fileName: String) {
- let pdfData = aView.dataWithPDFInsideRect(aView.frame)
- if let documentDirectories = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true).first {
- let documentsFileName = documentDirectories + “/” + fileName
- debugPrint(documentsFileName)
- pdfData.writeToFile(documentsFileName, atomically: true)
- }
- }