3
私は静的データと動的データの両方を含むhtmlファイルを持っており、そのhtmlファイルからPDFファイルを生成する必要があります。私はPDFファイルを作成することができますが、それは最初のページだけを印刷します。私は3ページのPDFファイルが必要です。私は以下の2つの関数を使ってPDFファイルを描画して保存しました。 私のコードは次のとおりです。私はこのためのアプリコーダのチュートリアルに従っているSwiftで複数ページのPDFを生成できません
func exportHTMLContentToPDF(HTMLContent: String) {
let printFormatter = UIMarkupTextPrintFormatter(markupText: HTMLContent)
let printPageRenderer = CustomPrintPageRenderer()
printPageRenderer.addPrintFormatter(printFormatter, startingAtPageAt: 0)
let pdfData = drawPDFUsingPrintPageRenderer(printPageRenderer: printPageRenderer)
pdfFilename = "\(AppDelegate.getAppDelegate().getDocDir())/FinalPdf.pdf"
pdfData?.write(toFile: pdfFilename, atomically: true)
print(pdfFilename)
}
func drawPDFUsingPrintPageRenderer(printPageRenderer: UIPrintPageRenderer) -> NSData! {
let data = NSMutableData()
UIGraphicsBeginPDFContextToData(data, CGRect.zero, nil)
UIGraphicsBeginPDFPage()
printPageRenderer.drawPage(at: 0, in: UIGraphicsGetPDFContextBounds())
UIGraphicsEndPDFContext()
return data
}
。複数ページの場合は、PDFページ作成の開始と印刷ページレンダラーの描画をループに組み込むことが含まれています。複数ページのPDFを作成するのを手伝ってください。
この記事を読む:https://developer.apple.com/library/content/documentation/2DDrawing/Conceptual/DrawingPrintingiOS/GeneratingPDF/GeneratingPDF.html#//apple_ref/doc/uid/TP40010156-CH10-SW1 – Vijay