如何在Swift中将UIView转换为多页PDF?

时间:2016-09-01 11:47:37

标签: swift pdf uiview multipage

我有一个用Swift编写的应用,想要将整个UIView导出为PDF。我发现下面的代码做得很好,但只生成单页的裁剪PDF。可导出的UIView包含一个动态的tableview,因此我需要根据UIView(包含用于此目的的scrollView)的长度来计算页数。任何帮助都会受到大力赞赏。

谢谢!

func createPDFFromView(aView: UIView, saveToDocumentsWithFileName fileName: String)
{
    let pdfData = NSMutableData()
    UIGraphicsBeginPDFContextToData(pdfData, aView.bounds, nil)
    UIGraphicsBeginPDFPage()

    guard let pdfContext = UIGraphicsGetCurrentContext() else { return }

    aView.layer.renderInContext(pdfContext)
    UIGraphicsEndPDFContext()

    if let documentDirectories = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true).first {
        let documentsFileName = documentDirectories + "/" + fileName
        debugPrint(documentsFileName)
        pdfData.writeToFile(documentsFileName, atomically: true)
    }

}

0 个答案:

没有答案