我正在使用qazxsw poi以编程方式发送电子邮件。我在SmtpClient
电话中使用了qazxsw poi。我设置了MailMessage.IsBodyHtml = true。
我可以使用像MailMessage
这样的简单html标签,但是在使用以下标签时遇到问题:
SmtpClient.SendAsync()
我的最终目标是发送一个电子邮件,其中包含一个简单的图表,我可以在网页中使用上面的html显示它,但它不能处理我在Outlook中打开的电子邮件。
在Microsoft Outlook中显示的电子邮件中似乎不支持<font>
和<svg width="600" height="100">
<rect x="0" y="0" rx="4" ry="4" width="20" height="50" style="fill:red" />
<rect x="20" y="0" rx="4" ry="4" width="20" height="100" style="fill:green" />
<rect x="40" y="0" rx="4" ry="4" width="20" height="100" style="fill:green" />
<rect x="60" y="0" rx="4" ry="4" width="20" height="100" style="fill:green" />
Sorry, your browser does not support inline SVG.
</svg>
。还有什么我可以用来获得与上面相同的结果吗?是否有一些特殊的标题我需要用于<svg>
和/或<canvas>
才能在我发送的电子邮件中得到支持?
我不希望这里有任何太复杂的事情。我只有一组真/假值,我希望在某种图形中显示。我可以以编程方式绘制一堆矩形或其他任何东西,但需要使用Outlook客户端打开时在电子邮件中实际可见的图形。
SVG在Outlook中不起作用。
它不适用于Gmail,AOL,Yahoo,Notes,Thunderbird或大多数Android版本。
<svg>
VML适用于Outlook。这是一种死胡同的技术,有很多支持和很少的例子。它可以做你喜欢的,只要它不太复杂。
<canvas>
你绝对可以制作盒子。图表并不难,但如果你只是让Outlook版本成为jpg图像,你将省去很多麻烦。
我没有在VML中做过的一些数据点的例子。但如果你在2000年左右搜索和寻找东西,你可能会找到一个你正在寻找的例子。绝对没有新的例子,因为我不认为即使微软计划在未来支持它。
<!--[if mso]>
<v:rect xmlns:v="urn:schemas-microsoft-com:vml" xmlns:w="urn:schemas-microsoft-com:office:word" href="#" style="height:42px;v-text-anchor:middle;width:500px;" strokecolor="#6f5a95" fillcolor="#563d82">
<w:anchorlock/>
<center style="color:#ffffff;font-family: Arial,sans-serif;font-size:18px;">See Your Choices</center>
</v:rect>
<![endif]-->
祝好运。
延迟加法编辑:
我发现该网站上有关于如何使用VML创建图形的示例。您可以使用CSS动画并创建适用于大多数电子邮件客户端和Outlook的内容。但如果不是,你总是这样:
祝好运。