MimeKit: How to embed images?

后端 未结 2 558
你的背包
你的背包 2020-12-31 01:36

I am using MailKit/MimeKit 1.2.7 (latest NuGet version).

I tried to embed an image in the HTML body of my email by following the sample from the API documentation (s

相关标签:
2条回答
  • 2020-12-31 02:20

    Try something a bit more like this:

    var builder = new BodyBuilder ();
    var pathImage = Path.Combine (Misc.GetPathOfExecutingAssembly (), "Image.png");
    var image = builder.LinkedResources.Add (pathLogoFile);
    
    image.ContentId = MimeUtils.GenerateMessageId ();
    
    builder.HtmlBody = string.Format (@"<p>Hey!</p><img src=""cid:{0}"">", image.ContentId);
    
    message.Body = builder.ToMessageBody ();
    

    If this works for you, I'll update the documentation.

    The problem might be that Apple's multipart/related implementation does not resolve the Image.png reference using the Content-Location header on the image mime part (possibly because it is a relative URL).

    The cid: URL-type should work, though, but it's a bit more awkward to construct since you need to know the Content-Id values for each image attachment.

    0 讨论(0)
  • 2020-12-31 02:22

    Just for reference, this can be found under http://www.mimekit.net/docs/html/Creating-Messages.htm now. The link in the original answer is broken.

    0 讨论(0)
提交回复
热议问题