在没有表格边框的TRichEdit中加载具有表格的RTF文件

时间:2011-01-04 05:50:17

标签: delphi rtf trichedit

我有一个RTF文件,我正在加载到TRichEdit控件中。

我遇到的唯一问题是,RTF文件中有表格,加载相同的表格边框。但是当我在MS Word中加载相同的RTF时,它不会显示任何边框(客户端需要相同的行为)。

有没有办法在加载到TRichEdit时不显示表的边框。

我正在使用Delphi7。

2 个答案:

答案 0 :(得分:2)

在实现RTF格式时,TRichEdit控件不如MS Word完整。 据我记忆,TRichEdit不会处理表格边框。

您需要将MS Word作为Active X控件嵌入,使用TRichView组件。 TRichView是更好的方法,因为TRichEdit行为与不同版本的Windows不一致,并且它不依赖于现有的MS Word安装。但它不是一个免费的组件。 :(

如果您只想显示一些文本和表格,可以将其转换为HTML,然后使用嵌入式Internet Explorer(使用THtmlView)显示它。

答案 1 :(得分:1)

如果您在2003年或更低版本的MS Office旧版本中打开RTF文件,无论是否指定边框,您仍然可以查看边框。

在较新版本的MS Office(2007和2010)中,您无法查看边框。

由于TRichEdit的RTF引擎是使用旧规范编写的,它将在您的应用程序中显示边框。

因此,您需要查看@ A.Bouchez答案中指定的第三方组件。