0

我在 VB6 中将一串 HTML 格式的文本作为签名传递给 Outlook,但在某些具有非常旧版本 Outlook 的非常旧的计算机上,它遇到了一个问题,即连字符会开始一个新行,或者如果我使用标签来修复然后自动换行将完全关闭。

我想尝试使用 RTF 而不是希望这能解决问题。但是,我仍然拥有 HTML 格式的签名,我需要使用富文本格式将其作为字符串传递到 Outlook。我找不到任何好的资源,或者即使有可能,每当我尝试时,它们都会出现转义命令和所有内容。

我当前的 HTML 字符串:

string = vbCrLf & vbCrLf & "<B><FONT face=Arial color=#365f91 size=2>" & _
                        strName & "</FONT>" & _
                        "<FONT face=Arial size=2><BR>" & _
                        "<I>" & strPosition & "</I>" & _
                        "</FONT></B><BR/><B><FONT face=Arial size=2>" & _
                        strAddress1 & "</FONT></B><BR/><FONT face=Arial size=1>" & _
                        strAddress2 & "<BR>" & strCity & ", " & _
                        strProvince & ", " & strPostalCode & _
                        "<BR>" & strCountry & "<BR>Office: " & strPhone & _
                        "<BR>" & strEmail & "<BR>www.website.com<BR>" & _
                        "&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;" & _
                        "<I><FONT face=Arial size=2>" & strImageCaption & "</FONT>" & _
                        "<BR/><BR/><BR/></I><FONT face=Arial size=1>" & strDisclaimer & _
                        "</FONT></P>"

任何人都可以帮助我将其作为 rtf 传递或知道我可以这样做吗?将不胜感激!

编辑:或者,如果有人知道如何用自动换行/换行连字符解决问题,我也会喜欢的。

4

1 回答 1

3

这可以是RTF模板的想法,由写字板制作并稍作改动。我假设您可以混合 VB 的东西来替换变量文本。

要得到这个:
你好
位置
My‑street
Mystreet 2
我的城市
我的免责声明

(我不知道如何在 SO 标记中使用颜色,但在 RTF 中,RED 的第一行和我的免责声明要小一点)

使用这个 RTF:

{\rtf1\ansi\ansicpg1252\deff0\deflang1043{\fonttbl{\f0\fnil\fcharset0 Arial;}}
{\colortbl ;\red255\green0\blue0;}
\cf0\b\fs22 Hello\par
\cf0\b0\i\fs24 postion\par
\i0 My\_street\par
Mystreet 2\par
My city\par
\fs22 My disclaimer\par
\f1\par
}

根据 RTF 规范,在 My 和 street 之间,我放置了一个不间断的连字符。在 html 中,同样可以通过使用来实现

&#8209;
于 2013-02-23T10:23:26.350 回答