2017-06-14 69 views
2

我在我的应用程序中努力工作,但我遇到了问题。 需要在Swift的HTML代码中插入图像发送电子邮件。如何在HTML Body Email Swift 3中插入图片?

这是我的代码,但当然不起作用!

var h = "<html><body leftmargin=15% topmargin=2% marginwidth=7% marginheight=7%>" 
h = h + "<img width=100px src=logoICR.png>" 
h = h + "</body></html>" 
+0

你见过这个https://开头计算器。 COM /问题/ 12210571 /如何到添加-A-图像输入电子邮件-体使用,mfmailcomposeviewcontrolle r –

+0

我不认为你不能用HTML标签发送图像。你只能作为附件发送 –

+0

Thak你。我在电子邮件前景html中做过,但我知道图像源,在Swift Xcode中,我知道哪里是si? (Src = ??????) – Gilko

回答

3

请尝试以下代码电子邮件HTML正文里面插入图片。


代码 雨燕4.0 & 雨燕3.1
import MessageUI 

class ViewController: UIViewController, MFMailComposeViewControllerDelegate{ 


    override func viewDidLoad() { 
     super.viewDidLoad() 
    } 

    //MARK: - Send Email 
    @IBAction func actionSendEmail(_ sender: Any) { 

     if !MFMailComposeViewController.canSendMail() { 
      print("Mail services are not available") 
      return 
     } 
     let image = UIImage(named:"testImage") // Your Image 
     let imageData = UIImagePNGRepresentation(image!) ?? nil 
     let base64String = imageData?.base64EncodedString() ?? "" // Your String Image 
     let strHtml = "<html><body><p>Header: Hello Test Email</p><p><b><img src='data:image/png;base64,\(String(describing: base64String))'></b></p></body></html>" 
     let composeVC = MFMailComposeViewController() 
     composeVC.mailComposeDelegate = self 
     // Configure the fields of the interface. 
     composeVC.setToRecipients(["[email protected]"]) 
     composeVC.setSubject("Hello!") 
     composeVC.setMessageBody(strHtml, isHTML: true) 

     // Present the view controller modally. 
     self.present(composeVC, animated: true, completion: nil) 
    } 

    //MARK:- MFMailCompose Delegate Methods 
    func mailComposeController(_ controller: MFMailComposeViewController, 
           didFinishWith result: MFMailComposeResult, error: Error?) { 
     // Dismiss the mail compose view controller. 
     controller.dismiss(animated: true, completion: nil) 
    } 

} 
+0

谢谢,但是这段代码对我不起作用。我得到了我只需要的代码ti从我的图像galery(xcasset文件夹)找到los da图像的方式 – Gilko

0

工作提供图像的完整路径:像

<img width=100px src=http://example.com/images/logoICR.png> 
+0

我不知道为什么,但不起作用 – Gilko