簡體   English   中英

將html文本作為附件以ios的pdf格式發送到郵件

[英]Sending html text to mail as an attachment in ios as pdf format

我必須將html文本作為帶有pdf擴展名的附件發送給郵件。

代碼:

    MFMailComposeViewController *mailViewController = [[MFMailComposeViewController alloc] init];
    mailViewController.mailComposeDelegate = self;
    NSArray *toReceipents =[NSArray arrayWithObjects:@"", nil];
    [mailViewController setToRecipients:toReceipents];
    [mailViewController setSubject:strMailMessage];
    NSLog(@"Mail Message:%@ %@",strMailMessage,appDelegate.strShareText);
    NSData* data = [appDelegate.strShareText dataUsingEncoding:NSUTF8StringEncoding];
    [mailViewController setMessageBody:appDelegate.strShareText isHTML:YES];
    [mailViewController addAttachmentData:data mimeType:@"application/pdf" fileName:@"Medication file.pdf"];
    [self presentModalViewController:mailViewController animated:YES];
    [mailViewController release];

注意:當我下載pdf文件時,我得到的是相同的text。但是我想以表格格式在pdf文檔中顯示文本

好的代碼,但是對於HTML,請嘗試;):

- (IBAction)mailCompose:(id)sender {

        MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];
        mail.mailComposeDelegate = self;

        [mail setSubject:@"Hello World!"];
        NSArray *toRecipients = [NSArray arrayWithObjects:@"e-mail here or leve empty", nil];

        [mail setToRecipients:toRecipients];
        NSString *emailBody = @"Body message App</b><br /><a href='https://itunes.apple.com/it/app/yourApp/id'>Download Free on AppStore!</a>";

        NSString *documentsDirectory = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
        NSString *filePath = [documentsDirectory stringByAppendingPathComponent:@"myVoice.caf"];
        NSData *myData = [NSData dataWithContentsOfFile:filePath];
        [mail addAttachmentData:myData mimeType:documentsDirectory fileName:@"myVoice.caf"];


        [mail setMessageBody:emailBody isHTML:YES];
        mail.modalPresentationStyle = UIModalPresentationPageSheet;
        [self presentViewController:mail animated:YES completion:nil];

}
- (void)mailComposeController:(MFMailComposeViewController *)controller didFinishWithResult:(MFMailComposeResult)result error:(NSError *)error {

    switch (result) {
        case MFMailComposeResultCancelled:
            NSLog(@"Cancelled");
            break;
        case MFMailComposeResultSaved:
            NSLog(@"Saved");
            break;
        case MFMailComposeResultFailed:
            NSLog(@"Faild");
            break;
        case MFMailComposeResultSent:
            NSLog(@"Sent");
            break;
        default:
            NSLog(@"Default");
            break;
    }

    [self dismissViewControllerAnimated:YES completion:nil];

}

Enjy希望這可以幫助您

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM