2016-12-01 1 views
0

Meine App erstellt eine PDF-Datei, wenn ich Enter drücke. Ich möchte der Eingabetaste eine weitere Funktion hinzufügen. Die zweite Funktion wird die erstellte PDF-Datei an Mail anhängen. Wenn ich also Enter drücke, wird die PDF-Datei erstellt und an die Mail angehängt.Hängen Sie die PDF-Datei automatisch nach dem Speichern in die Mail ein

Dieser Code ist für PDF-Datei zu speichern:

@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

Duplikat von http://stackoverflow.com/questions/30423583/attach-a-pdf-file-to-email-swift – Darshana

Antwort

0

Der Swift 3.0-Code unten ist groß gearbeitet!

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) 
Verwandte Themen