RTF 格式 說明

2021-07-09 20:51:02 字數 1331 閱讀 4092

摘要: 本文對rtf檔案格式進行分析研究,對rtf檔案結構及特性進行了闡述,並分別列舉了幾個實用性的例子進行詳細分析,

關鍵字:rtf、rich text format、office、檔案格式。

一、引言

富文字格式(rtf)規範是為了便於在應用程式之間輕鬆轉儲格式化文字和圖形的一種編碼方法。現在,使用者可以利用特定轉換軟體,在不同系統如ms-dos、windows、os/2、macintosh和power macintosh的應用程式之間轉移字處理文件。rtf規範提供一種在不同的輸出裝置、操作環境和作業系統之間交換文字和圖形的一種格式。rtf使用ansi, pc-8, macintosh, 或ibm pc字符集控制文件的表示法和格式化,包括螢幕顯示和列印。憑藉rtf規範,不同的作業系統和不同的軟體程式建立的文件能夠在這些作業系統和應用程式之間傳遞。

將乙個格式化的檔案轉換為rtf檔案的軟體稱為rtf書寫器。rtf書寫器用於分離現有文字中的程式控制資訊,並且生成乙個包含文字和與之相關的rtf組的新檔案。將rtf檔案轉換成格式化檔案的軟體則稱為rtf閱讀器。

二、rtf基本語法

rtf檔案由未格式化本文、控制字、控制符和組組成。rtf檔案沒有限制檔案的行的最大長度。控制字是rtf用來標記列印控制符和管理文件資訊的一種特殊格式的命令。乙個控制字最長32個字元。控制字的使用格式如下:

\字母序列《分隔符》

注意:每個控制字均以乙個反斜槓\開頭。字母序列由a~z 的小寫字母組成。控制字(或者稱為關鍵字)通常應該不包含任何大寫字母。

分隔符標記rtf控制字的結束, 可以是下列各項之一:

· 乙個空格,這時空格是控制字的一部份。

· 乙個數字或連字元(-), 表示跟隨的乙個數值引數。該數字序列的長度由其後的乙個空格或除了字母和數字的其他字元劃定。這個引數可以是正數或者負數,它的取值範圍通常是從-32767到32767。

· 任何非字母和數字的其他字元。這種情況下,此分隔字元結束控制字,而它並不屬於控制字的一部分。

控制符由乙個反斜線\跟隨單個非字母字元組成。例如,\~代表乙個不換行空格。控制符不需要分隔符。

組由包括在({})中的文字、控制字或控制符組成。左擴符()表示組的結束。每個組包括文字和文字的不同屬性。rtf檔案也能同時包括字型、格式、螢幕顏色、圖形、腳注、注釋(註解)、檔案頭和檔案尾、摘要資訊、域和書籤的組合,以及文件、區段、段落和字元的格式屬性。如果包括字型、檔案、格式、螢幕顏色、校訂標記,以及摘要資訊組、文件格式屬性,則他們一定要在檔案的第一純文字字元之前,這些組形成rtf的檔案頭。如果包括字型組,則它應該在格式組之前。如果組未使用,可以省略。

對於rtf檔案的詳細語法及關鍵字說明請參閱《rich text format (rtf) specification v1.7》,這裡不作更詳細的說明。

Rtf(富文字格式)解析

rtf規範最早是微軟編寫的關於多 儲存的一種文件儲存格式,後來微軟把它開放出來,這樣就使得不同的應用程式 作業系統 顯示裝置之間可以根據rtf規範進行實現,最終使得同乙個rtf格式的文件在不同的環境有相同的顯示效果。1 rtf檔案 使用7 bit ascii字元格式儲存,檔案沒有限制一行的最大長度。...

RichTextBox中的RTF格式的讀取和儲存

方法一 將richtextbox的內容直接寫入資料庫 private void button1 click object sender,eventargs e pram 0 value bwrite sqlhelper.runsql insert into xx values xx pram 將資料...

C 重寫RichBox控制項獲取RTF格式的內容

最近做了乙個能記筆記的小工具,記筆記則需要乙個富文字編輯框,於是就手動寫了乙個富文字編輯框,設定字型 插入這些功能都沒問題,最後需要儲存編輯好的文字內容時就遇到問題了,本來想放棄的,但用html做的編輯器實在不好用,於是就想辦法獲取richbox的rtf格式內容。richbox本身沒的直接獲取rtf...