在我的应用程序中,我必须生成PDF并使用mfmail撰写控制器发送该附件。要生成pdf,我已经使用CALayer类将uiview呈现为PDF。生成的pdf需要作为附件发送给相应的用户。现在的问题是,在接收器端附件是可见的,并且只接收来自iphone的邮件而不是来自ipad。同时发送完全显示的邮件,但不显示邮件(从Ipad发送邮件时)。指导我解决这个问题。这是我生成PDF的代码。PDF附件未通过邮件接收,而通过IPad发送邮件
NSMutableData *pdfData = [NSMutableData data];
UIGraphicsBeginPDFContextToData(pdfData, pdfView.bounds, nil);
UIGraphicsBeginPDFPage();
CGContextRef pdfContext = UIGraphicsGetCurrentContext();
[pdfView.layer renderInContext:pdfContext];
// remove PDF rendering context
UIGraphicsEndPDFContext();
// Retrieves the document directories from the iOS device
NSArray* documentDirectories = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);
NSString* documentDirectory = [documentDirectories objectAtIndex:0];
NSString* documentDirectoryFilename = [documentDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.pdf",[receivedSelectedDict valueForKey:@"reportID"]]];
NSLog(@"while creating %@",documentDirectoryFilename);
// instructs the mutable data object to write its context to a file on disk
[pdfData writeToFile:documentDirectoryFilename atomically:YES];
代码附加了PDF作为一个作曲家附件:
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *file = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.pdf",[receivedSelectedDict valueForKey:@"reportID"]]];
NSLog(@"while fetching %@",file);
NSMutableData *data=[NSMutableData dataWithContentsOfFile:file];
[mailViewController addAttachmentData:data mimeType:@"application/pdf" fileName:[receivedSelectedDict valueForKey:@"reportID"]];