我正在尝试让我的 C# 应用程序生成表单电子邮件。我本应该在周五一个小时内完成这件事……但 Outlook 非常不听话。
似乎无论我在 MailItem 的 HTMLBody 中指定字体大小的方式如何,它的大小都略有不同。Font face 总是按指定出现,但大小永远不会正确。
email.HTMLBody = "<p style='font-size:11px;font-family:Calibri;'>girl look at that body</p>";
email.HTMLBody = "<style> body { font-family:'Calibri'; font-size:11px; } </style> <body>girl look at that body</body>";
email.HTMLBody = "<html><header><style> body { font-family:'Calibri'; font-size:11px; } </style></header> <body>girl look at that body</body></html>";
email.HTMLBody = "<span style='font-size:11px;font-family:calibri;'>girl look at that body</span>";
生成大小为 8.5 的字体。
email.HTMLBody = "<html><body><font face='Calibri' size='11px'>girl look at that body</font></body></html>";
email.HTMLBody = "<font face='Calibri' size='11px'>girl look at that body</font>";
生成 12 号字体。
因此,似乎通过 CSS 指定 11px(或 11pt,也尝试过)字体让我得到 8.5px,而通过字体标签让我得到 12px。
我对此做了一些进一步的尝试,基本上,字体标签无论如何都会产生 12pt 字体。所以这是一个死胡同,但我知道字体标签无论如何都被弃用了。CSS 标签会给我不同的尺寸,但很少是我要求的。它总是关闭,而不是一致的数量。
代码中的字体大小 = 电子邮件中的字体大小:
- 12 = 9
- 13 = 10
- 14 = 10.5
- 15 = 11.5
- 16 = 12
- 17 = 13
- 18 = 13.5
- 19 = 14.5
- 20 = 15
在 CSS 中指定 14.5px 给了我我想要的 11px ......但我觉得部署依赖于它的东西感觉不舒服。
这里有什么问题?有什么我忽略在 CSS 中指定的吗?我需要在 MailItem 或 Outlook.Application 的其他地方进行调整?