我想使用 Word 自动化(早期绑定)拼写/语法检查 TDBrichEdit 组件的内容,同时在此过程中保留源的 RTF 格式。这样做的明显方法是使用剪贴板,如下所示:
- DBRichEdit.SelectAll;
- DBrichEdit.Lines.CopyToClipboard;
- WordDoc.Content.Paste;
- 进行拼写/语法检查;
- WordDoc.Content.Copy;
- DBrichEdit.PasteFromClipboard。
它有效,但我认为这是糟糕的编程,因为它与剪贴板内容混淆(这可能很烦人)。
我刚刚偶然发现 Range 对象的 FormattedText 属性,该属性允许通过将 RTF 格式的文本(包括段落格式)分配给范围对象而不是通过剪贴板传递来复制和粘贴它。它被声明为
属性 FormattedText:范围读取 Get_FormattedText 写入 Set_FormattedText;
在 WordXP.pas 中,我不知道如何为其分配 TDBrichEdit 的内容。是否可以使用此属性?我也尝试过流式传输到 word 文档,但无济于事。
如何在不使用剪贴板的情况下将 TDBRichEdit 组件 (DBRchEdit.Lines) 的内容分配给 Word 文档(并在拼写/语法检查后将其恢复)?