簡體   English   中英

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

[英]How to create RTF from plain text (or string) in C#?

有人可以幫我從C#中的字符串創建RTF嗎?

我將所有格式(粗體,斜體等)保存在自定義類中。

傑瑞

作為最簡單的選項,您可以在winforms應用程序中使用RichTextBoxControl。

richTextBox1.SaveFile(@"C:\temp\test.rtf", RichTextBoxStreamType.RichText);

我會使用外部庫而不是自己編寫。 檢查以下項目:

您可能還可以使用RichTextBox控件Rtf屬性 (如果您的用戶在此類控件中輸入數據)。

可以在這里找到用於工作/創建/編輯RTF文件的良好庫:

http://sourceforge.net/projects/netrtfwriter/

它是免費的,只需要一些文檔,您也可以使用NuGet軟件包管理器找到很多替代方案。

我知道我是NECRO的一個老問題,但是無論如何,這是我的建議:

//This Instances a new RichTextBox Control and uses it so save the Text
private void Save_RTF_file(string pFilePath, string pRTFText)
{
    try
    {
        using (RichTextBox RTB = new RichTextBox())
        {
            RTB.Rtf = pRTFText;
            RTB.SaveFile(pFilePath, RichTextBoxStreamType.RichText);
        } 
    }
    catch (Exception ex)
    {
        throw ex;
    }
}

現在,您傳遞一個file_path和RTF格式的文本:

//This is a simple 1 line 'Hello World' RTF text
string RTF = @"{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang14346{\fonttbl{\f0\fnil\fcharset0 Calibri;}} {\*\generator Riched20 10.0.10586}\viewkind4\uc1 \pard\sa200\sl276\slmult1\f0\fs22\lang10 Hello World.\par }";

Save_RTF_file(@"C:\temp\my_rtf_file.rtf"), RTF);

希望能幫助到你。

暫無
暫無

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

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