2016-09-22 350 views
1

我需要創建PDF格式的各種報告並將其發送給特定人員。我設法將HTML模板加載到字符串中,並用真實數據替換某些「自定義標記」。最後,我有一個充滿可視的HTML文件。這個文件現在必須打印成PDF格式,我可以在下面的鏈接後通過:https://www.appcoda.com/pdf-generation-ios/。我的問題是,我不明白如何確定HTML文件的頁數,因爲pdf渲染器需要逐頁創建。將HTML字符串轉換爲PDF轉換

回答

0

我知道這是一個古老的線程,我想在這裏留下這個答案。我也使用了你提到的相同的教程,這裏是我做了多個頁面。只需修改drawPDFUsingPrintPageRenderer方法是這樣的:

func drawPDFUsingPrintPageRenderer(printPageRenderer: UIPrintPageRenderer) -> NSData! { 
     let data = NSMutableData() 

     UIGraphicsBeginPDFContextToData(data, CGRect.zero, nil) 
     printPageRenderer.prepare(forDrawingPages: NSMakeRange(0, printPageRenderer.numberOfPages)) 

     let bounds = UIGraphicsGetPDFContextBounds() 

     for i in 0...(printPageRenderer.numberOfPages - 1) { 
      UIGraphicsBeginPDFPage() 
      printPageRenderer.drawPage(at: i, in: bounds) 
     } 

     UIGraphicsEndPDFContext() 

     return data 
} 

在您的自定義PrintPageRenderer您可以訪問numberOfPages有網頁的總數