我知道您可以使用“选项”更改 Outlook 中发送邮件的默认字体,方法是更改普通电子邮件.dotm,但这些方法都不适用于我的情况。
为了演示目的,可以在 Microsoft 网站上找到以下 VBA 代码。Application.CreateItem 方法 (Outlook)
Sub CreateHTMLMail()
'Creates a new email item and modifies its properties
Dim objMail As Outlook.MailItem
'Create email item
Set objMail = Application.CreateItem(olMailItem)
With objMail
'Set body format to HTML
.BodyFormat = olFormatHTML
.HTMLBody = "<HTML><H2>The body of this message will appear in HTML.</H2><BODY> Please enter the message text here. </BODY></HTML>"
.Display
End With
End Sub
我们不使用 VBA,而是从 C# 调用相同的 Office 方法。无论如何,问题都是一样的,因为新消息的字体因用户而异。根据我的经验,有些人看到的是 Times Roman;其他人看到的是 Calibri。
我知道我们可以将字体硬编码到 html 主体中,但我们确实希望将字体选择权留给 Outlook 和最终用户。我们只是无法指导他们如何更改字体。
答案1
我对代码不太熟悉。如果要为所有用户设置默认字体,我们也可以通过 GPO 部署相关的注册表项(邮件设置)。
字体设置保存在此路径:HKEY_CURRENT_USER\Software\Microsoft\Office\XX.0\Common\MailSettings
此 Technet 主题中讨论了此问题: