[英]How to use TMemo for email message body in Delphi
我有一个 TMemo object,其中包含大约 30 行(一些文本,一些空白行)的文本,代表我希望应用程序发送的 email 的消息正文。 在下面的代码中,我将 TMemo object 中的文本传递给IdMessage1.Body.Text
(Indy 10),但我生成的 email 消息正文似乎只是一个连续的换行。 我想查看包含一些空白行的间距。 如果我从 TMemo 的 Lines 参数中复制内容并将其粘贴到文本编辑器中,我可以在行尾看到 CR 和 LF。
CR & LF 在此翻译中是否被剥离,我是否应该为此使用不同的组件而不是 TMemo,或者我是否将 TMemo 中的行错误地传递给IdMessage1.Body.Text
?
IdMessage1.Body.Text := EmailBodyMemo.Text;
IdMessage1.ContentType := 'text/html';
TMemo.Text
属性将整个内容作为单个string
返回,每行之间没有插入任何“软”(自动换行)换行符,只有“硬”换行符(显式CR
/ LF
字符)。
改用这个:
IdMessage1.Body.Text := EmailBodyMemo.Lines.Text;
Lines.Text
返回一个string
,每行由Lines.LineBreak
分隔(在 Windows 上默认为CRLF
)。
或者更好的是,改用这个:
IdMessage1.Body := EmailBodyMemo.Lines;
这与这样做相同:
IdMessage1.Body.Assign(EmailBodyMemo.Lines);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.