1

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ファイルをダウンロードすると、同じテキストが表示されますが、テキストをPDFドキュメントの表形式で表示したい

4

1 に答える 1

0

良いコードですが、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];

}

これがあなたに役立つことを願っています

于 2013-07-05T14:14:30.447 に答える