office交流網(wǎng)--QQ交流群號(hào)及微信交流群

Access培訓(xùn)群:792054000         Excel免費(fèi)交流群群:686050929          Outlook交流群:221378704    

Word交流群:218156588             PPT交流群:324131555

微信交流群(請(qǐng)用微信掃碼)

        

RTF文件(富文本格式)的一些解析

2020-05-15 08:00:00
tmtony8
原創(chuàng)
20086

RTF是Rich TextFormat的縮寫,即為富文本格式。這是一種類似DOC格式(Word文檔)的文件,有很好的兼容性,使用Windows“附件”中的“寫字板”就能打開并進(jìn)行編輯。RTF是一種非常流行的文件結(jié)構(gòu),很多文字編輯器都支持它。一般的格式設(shè)置,比如字體和段落設(shè)置,頁(yè)面設(shè)置等等信息都可以存在RTF格式中,它能在一定程度上實(shí)現(xiàn)word與wps文件之間的互訪。

Rtf規(guī)范最早是微軟編寫的關(guān)于多媒體存儲(chǔ)的一種文檔存儲(chǔ)格式,后來(lái)微軟把它開放出來(lái),這樣就使得不同的應(yīng)用程序、操作系統(tǒng)、顯示設(shè)備之間可以根據(jù)Rtf規(guī)范進(jìn)行實(shí)現(xiàn),最終使得同一個(gè)Rtf格式的文檔在不同的環(huán)境有相同的顯示效果。

1、RTF文件:使用7-bit ASCII字符格式存儲(chǔ),文件沒有限制一行的最大長(zhǎng)度。
RTF文件 = 組 + 控制字 + 控制符 + 文檔內(nèi)容

2、控制字:管理文檔信息、文檔顯示格式的命令,一個(gè)控制字最長(zhǎng)32個(gè)字符。
控制字 = \ + 字母序列 + 分隔符
例如:"\fc "代表字體顏色
字母序列 = a~z小寫字母中的一個(gè)或者多個(gè)字符
例如:"\fc "代表字體顏色
分隔符 = 空格 或者 數(shù)字 或者 空格和數(shù)字 (數(shù)字作為控制字的參數(shù))
例如:"\b "代表加粗,"\b0 "代表不加粗
注意:任何非字母和數(shù)字的其他字符。這種情況下,此分隔字符結(jié)束控制字,而它并不屬于控制字的一部分。如果一個(gè)空格用于分隔控制字,該空格不會(huì)在文檔中出現(xiàn)。而任何跟隨該分隔符的字符,包括空格,將在文檔中出現(xiàn)。因此,你應(yīng)該只在必要時(shí)使用空格,避免僅僅為了分割RTF代碼而使用空格。

3、控制符:控制符不需要分隔符
控制符 = \ + 非字母數(shù)字字符
例如 “\~”代表不換行空格。

4、組
組 = { 控制字 + 控制符 + 文檔內(nèi)容 }
例如"{\b 這個(gè)代表加粗}"會(huì)將"這個(gè)代表加粗"內(nèi)容進(jìn)行加粗
注意:一個(gè)組的格式描述只影響組內(nèi)的文本。通常,一個(gè)組中的文本繼承前一組的文本格式。但微軟的RTF約定,對(duì)于腳注、注解、頭和尾的組(本章稍后描述)不繼承前一組的文本格式。因此, 請(qǐng)確定這些組總能正確格式化,正確做法是用\sectd, \pard和\plain控制字將組中的格式設(shè)為默認(rèn)值,然后再增加任何需要的格式。
\sectd : 重新設(shè)置為默認(rèn)的節(jié)屬性
\pard:重置為默認(rèn)段落屬性
\plain: 重新設(shè)定字型(字符)格式化屬性為應(yīng)用程序定義的默認(rèn)值(例如,粗體、下劃線、斜體被禁止;字體大小被重新設(shè)定為12磅point)。關(guān)聯(lián)字體(字符)格式化屬性也被重新設(shè)定。


{\rtf1\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\fnil\fcharset134 \'cb\'ce\'cc\'e5;}}
{\colortbl ;\red255\green255\blue0;\red255\green0\blue0;\red0\green0\blue255;}
\viewkind4\uc1\pard\cf1\lang2052\f0\fs20 Osamu\cf2  Naga\cf0 y\cf3 am\cf0 a,\par
           was unable to pinpoint.//PRD#\cf1 OQS\par
it \cf0 signed a \cf1 definitive\cf0  agreement\par
\par
}


其中:
rtf1–>RTF版本
ansi–> 字符集
ansicpg936–>簡(jiǎn)體中文
deff0–>默認(rèn)字體0
deflang1033–>美國(guó)英語(yǔ)
deflangfe2052–>中國(guó)漢語(yǔ)
fonttb–>字體列表
f0->字體0
fcharset134 ->GB2312國(guó)標(biāo)碼
'cb’ce’cc’e5–>宋體


\colortbl 顏色表 ;顏色1;顏色2;顏色3;

\viewkind4正常視圖
uc1->單字節(jié)
pard->默認(rèn)段落屬性
cf1->顏色1
lang->2052中國(guó)漢語(yǔ)
f0->字體0
fs20->字體大小20磅
Osamu Naga 原文
\cf0 默認(rèn)顏色
y
\cf2 顏色2
am
\cf0默認(rèn)顏色 a,
\par換行



RTF文件格式說(shuō)明:
1.\ansi Character Set Flag 采用的字符集名稱
2.\b Character Formatting Properties Toggle 字符是粗體
3.\b0 Character Formatting Properties Toggle 字符是非粗體
4.\blueNNN Color Table Value 標(biāo)識(shí)藍(lán)色的rgb數(shù)值(0-255)
5.\brdrb Paragraph Borders Flag 段落邊界底部
6.\brdrcfNNN Paragraph Borders Value 段落邊界顏色
7.\brdrs Paragraph Borders Flag 段落邊界單線邊框
8.\brdrt Paragraph Borders Flag 段落邊界頂部
9.\brdrth Paragraph Borders Flag 段落邊界雙線邊框
10.\brdrwNNN Paragraph Borders Value 段落邊界線的寬度(單位是堤)
11.\cfNNN Character Formatting Properties Value 字符前景色(0-255)
12.\chpgn Special Characters Symbol 當(dāng)前頁(yè)號(hào)
13.\colortbl Color Table Destination 顏色表
14.\deffNNN Font Table Value 默認(rèn)字體(N是字體號(hào))
15.\deftabNNN Document Formatting Properties Value 文檔中默認(rèn)tab寬度(單位是堤,默認(rèn)值是720堤)
16.\emdash Special Characters Symbol 長(zhǎng)說(shuō)明號(hào)——(特殊符號(hào))
17.\endash Special Characters Symbol 短說(shuō)明號(hào)-(特殊符號(hào))
18.\fNNN Character Formatting Properties Value 字符的字體(N是在字體表中的編號(hào))
19.\fonttbl Font Table Destination 字體表
20.\fonttype fontname 字體類型,字體名稱
21.\footer Headers and Footers Destination 所有頁(yè)的頁(yè)腳。
22.\footeryNNN Section Formatting Properties Value 片斷中頁(yè)腳和底部的距離(單位是堤,默認(rèn)是720堤)
23.\fsNNN Character Formatting Properties Value 字符在半角狀態(tài)下的字體大?。J(rèn)是24)
24.\greenNNN Color Table Value 標(biāo)識(shí)綠色的rgb值(0-255)
25.\headeryNNN Section Formatting Properties Value 片斷中標(biāo)頭和頂部的距離(單位是堤)
26.\i Character Formatting Properties Toggle 字符是斜體
27.\i0 Character Formatting Properties Toggle 字符是非斜體
28.\keepn Paragraph Formatting Properties Flag 段落與下段同頁(yè)
29.\line Special Characters Symbol 分隔符中的一種:換行符(不是段落分隔符)
30.\li Paragraph Formatting Properties Value 段落的左縮進(jìn)(默認(rèn)是0)
31.\margbNNN Document Formatting Properties Value 文檔底部空白的高度(單位是堤)
32.\marglNNN Document Formatting Properties Value 文檔左部空白的寬度(單位是堤)
33.\margrNNN Document Formatting Properties Value 文檔右部空白的寬度(單位是堤)
34.\margtNNN Document Formatting Properties Value 文檔頂部空白的高度(單位是堤)
35.’ Special Characters Symbol ‘ 單撇符號(hào)
36.\page Special Characters Symbol 分隔符中的一種:分頁(yè)符
37.\par Special Characters Symbol 新的段落標(biāo)志
38.\pard Paragraph Formatting Properties Flag 段落中用于對(duì)腳注,注釋,標(biāo)頭,頁(yè)腳等特殊信息分成單獨(dú)的組,用來(lái)針對(duì)每個(gè)組單獨(dú)指定獨(dú)立于文本內(nèi)容的格式。
39.\plain Character Formatting Properties Flag 使字符格式恢復(fù)到應(yīng)用指定的默認(rèn)格式,相關(guān)的字符格式也恢復(fù)到應(yīng)用指定的默認(rèn)格式。
40.\qc Paragraph Formatting Properties Flag 段落格式居中
41.\qj Paragraph Formatting Properties Flag 段落兩端對(duì)齊
42.\ql Paragraph Formatting Properties Flag 段落格式左對(duì)齊
43.\qr Paragraph Formatting Properties Flag 段落格式右對(duì)齊
44.\redNNN Color Table Value 標(biāo)識(shí)紅色的rgb值
45.\riNNN Paragraph Formatting Properties Value 段落格式的右縮進(jìn)值(默認(rèn)值為0)
46.\rtf RTF Version Destination RTF版本號(hào)
47.\slmultNNN Paragraph Formatting Properties Value 段落的多倍行間距0 “最小”或“嚴(yán)格”的行距1 多倍行間距(相對(duì)于單倍行間距)
48.\slN Paragraph Formatting Properties Value 段落的指定行間據(jù)可以調(diào)整或者默認(rèn)為行的最大高度的字符的高度。
49.\tab Special Characters Symbol TAB字符
50.\titlepg Section Formatting Properties Flag 片斷中有特殊格式的第一頁(yè)
51.\tqr Tabs Flag 右部用TAB填充
52.\tx Tabs Value TAB位置,從左邊空白處開始(而不是從左邊頁(yè)邊緣開始,單位是堤)
53.\ul Character Formatting Properties Toggle 字符具有連續(xù)的下劃線(\ul0關(guān)閉連續(xù)的下劃線)
54.\widowctrl Document Formatting Properties Flag 文檔的孤行控制

分享
文章分類
聯(lián)系我們
聯(lián)系人: 王先生
Email: 18449932@qq.com
QQ: 18449932
微博: officecn01
移動(dòng)訪問