在c#中通过电子邮件发送GIF动画

本文关键字:GIF 动画 电子邮件 | 更新日期: 2023-09-27 18:05:02

我正在尝试使用Gmail帐户通过电子邮件发送动画GIF。我可以用下面的代码发送正常的图片:

MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
mail.From = new MailAddress("my adress", "Kinomaton");
mail.To.Add(richTextBox1.Text);
mail.Subject = Kinomaton.Properties.Settings.Default.objet;
mail.Body = Kinomaton.Properties.Settings.Default.mail;
System.Net.Mail.Attachment attachment;
attachment = new System.Net.Mail.Attachment(@"F:'gif_temp'gif" + (Kinomaton.Properties.Settings.Default.folder - 1) + "''gif_final3.jpg");
mail.Attachments.Add(attachment);
SmtpServer.Port = 587;
SmtpServer.Credentials = new System.Net.NetworkCredential("my adress", "my password");
SmtpServer.EnableSsl = true;
SmtpServer.Timeout = 500000000;
SmtpServer.Send(mail);

问题是,当我尝试用。gif文件替换。jpg文件时,它不起作用。谁能帮我一下?

在c#中通过电子邮件发送GIF动画

第一步:上传gif到imgur

步骤2:发送一封包含gif链接的电子邮件

步骤3:Party

这将确保收件人可以实际查看gif。正如评论中提到的,很多电子邮件客户端无论如何都不会显示gif。

*编辑*通过代码上传文件:

using (var w = new WebClient())
{
    var values = new NameValueCollection
    {
        { "key", "<api-key>" },
        { "image", Convert.ToBase64String(File.ReadAllBytes(@"<file>")) }
    };
    byte[] response = w.UploadValues("http://imgur.com/api/upload.xml", values);
    Console.WriteLine(XDocument.Load(new MemoryStream(response)));
}

输出将告诉您文件在Imgur上的链接,以便您可以将其发送给任何人。