在C#控制台应用程序中,我需要从RTF字符串中提取文本,向其中添加更多文本,然后将其转换回RTF。 我已经能够使用System.Windows.Forms.RichTextBox类执行此操作,但我发现在非Forms应用程序中使用Forms控件有点奇怪。 有更好的方法吗?

===============>>#1 票数:3 已采纳

请参阅有关此主题的讨论:

清理RTF文本

===============>>#2 票数:1

除非您使用Windows窗体,否则使用RTF执行任何操作都非常困难。 如上所述,使用表单是最简单的方法。

你可以自己写一些东西,但RTF规范非常复杂。
http://www.biblioscape.com/rtf15_spec.htm

或者您可以使用转换DLL / ActiveX对象,其中有大量可用。 http://www.sautinsoft.com/

或者 - 如果您是从Linux执行此操作,则还有可用的工具。 粗略的一瞥引发了UnRTF http://www.gnu.org/software/unrtf/unrtf.html

我没有包含将文本转回RTF的内容,因为我认为RTF规范正确地处理和格式化文本。

===============>>#3 票数:1

我想你应该动摇这种“奇怪”的感觉。 它没什么奇怪的。

===============>>#4 票数:0

在控制台应用程序甚至Web应用程序中使用用户界面控件没有任何问题。 Windows控件是.NET Framework的一部分,也可以使用它们。 为了工作,这些控件不需要以“表单”托管。

重新发明轮子,使用DLL / ActiveX / OCX,并使用Linux根本不是你的问题的实际答案。 更好的方法是......做你所知道的。 实际上,使用现有的框架方法然后使用建议的替代方案可以获得性能和维护优势。

===============>>#5 票数:0

这取决于你对'更好'的意思。 您已经在使用最简单,最简单的方法。

  ask by adeel825 translate from so

未解决问题?本站智能推荐:

6回复

如何在C#中将字符串转换为RTF?

题 如何将字符串“Européen”转换为RTF格式的字符串“Europ \\'e9en”? 到目前为止我发现了什么 RichTextBox的 RichTextBox可用于某些事情。 例: 但是rtfFormattedString原来是整个RTF格式的文档,而
3回复

如何在C#中将文本从RTF插入Word文档

我正在使用winservice创建Word文档。 我唯一的问题是将rtf粘贴到单词选择中。 我有以下代码: 您有没有在不使用剪贴板的情况下怎么做的想法?
4回复

如何用C#中的纯文本(或字符串)创建RTF?

有人可以帮我从C#中的字符串创建RTF吗? 我将所有格式(粗体,斜体等)保存在自定义类中。 杰瑞
1回复

C#字符串转换为RTF性能

我有一些有关从字符串到RTF转换的性能问题。 我的方法如下所示: 但是,如果我使用此方法,似乎我的方法会使我失去大约3秒的时间。 我考虑过使用String-Builder之类的东西,但我认为这不会有所帮助。 顺便说一句,我已经尝试在程序启动时仅初始化一次RTF对象,但这并没有改变。
4回复

如何将Unicode字符串输出到RTF(使用C#)

我正在尝试将Unicode字符串输出为RTF格式。 (使用C#和Winforms) 来自维基百科 : 如果需要Unicode转义,则使用控制字\\ u,后跟16个带符号的十进制整数,以提供Unicode代码点编号。 为了使不支持Unicode的程序受益,必须在指定的代码页中紧
1回复

将rtf文件加载到字符串以在C#中进行操作

有没有办法将rtf文件读入字符串,然后替换它们上的某些模式? 理想情况下,我想将新字符串再次保存到rtf文件中,然后从写字板中打开。 我所看到的只是我想跳过的richtextbox解决方案。 我以前通过创建Word.Application Word.Document oDoc.Cont
1回复

C#-将RTF格式的字符串获取到RichTextBox

我有一个RTF格式的字符串,我想加载到richTextBox中,但是richTextBox仅显示文本,而不显示格式。 我正在使用richTextBoxExtended,它具有一个richTextBox,可以使用“ richTextBoxExtended1.RichTextBox”将其作为普
2回复

如何在C#中将多个RTF文件合并为一个RTF

我正在尝试将多个rtf文档合并为一个。 合并的大小增加了(所有文档的大小),但是当我打开时,我只能看到第一个RTF文件内容。
3回复

在C#中将图像插入RTF文档

我正在创建一个可以轻松插入图像的RichTextBox子类。 我提到这个问题开始,但我不能让生成的RTF字符串工作。 当我尝试设置RTB的SelectedRtf时,它出错“文件格式无效”。 这是我的代码: 我已经看到了我正在尝试做的工作示例,但使用wmetafiles,但我不想使用
1回复

RichTextBox.RTF不接受从数据库生成的字符串-C#

我这里有一个奇怪的问题。 我试图创建一种表单,当从ListBox中进行选择时,将轮询数据库中的数据并将其显示在RichTextBox中。 我需要将数据保存在RTF中以进行格式化。 如果我做这样的事情,它工作正常: 在这种情况下,RichTextBox(SaveRichTest)