2011-12-04 53 views
0

我需要格式化文本在RichTextBox輸出,例如,只是在做這在寫字板格式文本

你好世界

給出了這樣的記事本,當我在記事本中打開富文本文件

{\rtf1\ansi\ansicpg1252\deff0\deflang1033{\fonttbl{\f0\fswiss\fcharset0 Arial;}} 
{\*\generator Msftedit 5.41.15.1515;}\viewkind4\uc1\pard\i\f0\fs20 hello\i0 world\par 
} 

我想格式化文本incode,並顯示富文本文本框,就像我在上面的wordpad中做的例子。

有沒有一種簡單的方法來實現這一點,而無需操縱richtext格式?

感謝

+0

你能更清楚嗎?目前尚不清楚你想要做什麼。你是否試圖以編程方式創建RTF?你想從RTF獲取純文本嗎?你說「只是這樣做」並顯示一些文字,但不要描述你在做什麼。你說「給出了這個」,但是你沒有說出什麼給了什麼,然後你提出了一個關於實現某件事情的問題,這並不表示你想要做什麼或者別的什麼。 – Brad

+0

@brad我添加了更多信息 – Smith

+0

您仍然不清楚...您正嘗試以編程方式創建RTF? – Brad

回答

2

可以使用RichTextBox控件本身來操作的內容,就像這樣:

RichTextBox1.Text = "Hello world" 'Set the text 
RichTextBox1.SelStart = 0 'Select the first 5 characters 
RichTextBox1.SelLength = 5 
RichTextBox1.SelItalic = True 'Set the selection to italic 

但是,你需要確切地知道你要格式化的文本的位置,因此,如果你想生成一個動態文件,這很困難。這似乎是爲您設計的,可以在表單上放置格式化按鈕,並讓用戶通過選擇部分文本來格式化正在查看的文本並選擇格式。 如果您想創建動態文檔,您可能需要使用庫來生成RTF文檔並顯示結果。這裏有一些RTF庫,用於ActiveX和.NET。

+0

謝謝,你可以給我任何這些庫嗎? – Smith

+0

我自己沒有用過這個,但是如果你需要ActiveX,RTFWriter看起來很有希望:http://www.tabogasoftware.com/id8.htm。如果你可以使用.Net,有更多的選擇,如果你使用關鍵字:rtf庫,Google會給出很多好看的結果 – GTG