2016-12-01 9 views
0

私が入力したときに私のアプリケーションはpdfファイルを作成します。 Enterボタンにもう1つの機能を追加したいと思います。 2番目の関数は、作成したpdfファイルをメールに添付します。だから私が入力を押すと、pdfファイルが作成され、メールに添付されます。保存した後、自動的にpdfファイルをメールに添付します。

@IBAction func EnterButtonAction(_ sender: AnyObject) { 

let html = "PDF FILE TITLE" 

let fmt = UIMarkupTextPrintFormatter(markupText: html) 

// 2. Assign print formatter to UIPrintPageRenderer 
let render = UIPrintPageRenderer() 
render.addPrintFormatter(fmt, startingAtPageAt: 0) 

// 3. Assign paperRect and printableRect 
let page = CGRect(x: 0, y: 0, width: 595.2, height: 1000) // A4, 72 dpi 
let printable = page.insetBy(dx: 0, dy: 0) 

render.setValue(NSValue(cgRect: page), forKey: "paperRect") 
render.setValue(NSValue(cgRect: printable), forKey: "printableRect") 

// 4. Create PDF context and draw 
let pdfData = NSMutableData() 
UIGraphicsBeginPDFContextToData(pdfData, CGRect.zero, nil) 

for i in 1...render.numberOfPages { 

    UIGraphicsBeginPDFPage(); 
    let bounds = UIGraphicsGetPDFContextBounds() 
    render.drawPage(at: i - 1, in: bounds) 
} 

UIGraphicsEndPDFContext(); 

// Save PDF file 
let path = "\(NSTemporaryDirectory())MyAppFile.pdf" 
pdfData.write(toFile: path, atomically: true) 
print("open \(path)") // command to open the generated file 

}

+1

重複するhttp://stackoverflow.com/questions/30423583/attach-a-pdf-file-to-email-swift – Darshana

答えて

0

以下スウィフト3.0コードは素晴らしい仕事をされています

このコードは、PDFファイルを保存するためです!

let pdfFilePath = "path to file.pdf" 
let url = NSURL.fileURL(withPath: pdfFilePath) 
let activityVC = UIActivityViewController(activityItems: ["My Pdf File",url], applicationActivities: nil) 
self.present(activityVC, animated: true, completion: nil) 
関連する問題