簡體   English   中英

如何在 C# 中將文本提取/插入到 RTF 字符串中

[英]How do I extract/insert text into RTF string in C#

在 C# 控制台應用程序中,我需要從 RTF 字符串中提取文本,向其中添加更多文本,然后將其轉換回 RTF。 我已經能夠使用 System.Windows.Forms.RichTextBox 類來做到這一點,但我發現在非表單應用程序中使用表單控件有點奇怪。 有沒有更好的方法來做到這一點?

請參閱有關此主題的討論:

清理RTF文本

除非您使用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規范正確地處理和格式化文本。

我想你應該動搖這種“奇怪”的感覺。 它沒什么奇怪的。

在控制台應用程序甚至Web應用程序中使用用戶界面控件沒有任何問題。 Windows控件是.NET Framework的一部分,也可以使用它們。 為了工作,這些控件不需要以“表單”托管。

重新發明輪子,使用DLL / ActiveX / OCX,並使用Linux根本不是你的問題的實際答案。 更好的方法是......做你所知道的。 實際上,使用現有的框架方法然后使用建議的替代方案可以獲得性能和維護優勢。

這取決於你對'更好'的意思。 您已經在使用最簡單,最簡單的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM