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 文檔的孤行控制
- office課程播放地址及課程明細(xì)
- Excel Word PPT Access VBA等Office技巧學(xué)習(xí)平臺(tái)
- 將( .accdb) 文件格式數(shù)據(jù)庫(kù)轉(zhuǎn)換為早期版本(.mdb)的文件格式
- 將早期的數(shù)據(jù)庫(kù)文件格式(.mdb)轉(zhuǎn)換為 (.accdb) 文件格式
- KB5002984:配置 Jet Red Database Engine 數(shù)據(jù)庫(kù)引擎和訪問連接引擎以阻止對(duì)遠(yuǎn)程數(shù)據(jù)庫(kù)的訪問(remote table)
- Access 365 /Access 2019 數(shù)據(jù)庫(kù)中哪些函數(shù)功能和屬性被沙箱模式阻止(如未啟動(dòng)宏時(shí))
- Access Runtime(運(yùn)行時(shí))最全的下載(2007 2010 2013 2016 2019 Access 365)
- access vba代碼太長(zhǎng),換行,分行的寫法
- VB6 VBA Access真正可用并且完美支持中英文的 URLEncode 與 URLDecode 函數(shù)源碼
- 自定義VB中的urlencode函數(shù),將URL中特殊部分進(jìn)行編碼
- Access 函數(shù)簡(jiǎn)化串接sql字符串,減少符號(hào)導(dǎo)致的書寫錯(cuò)誤
- vba完全關(guān)閉IE瀏覽器及調(diào)用IE瀏覽器的簡(jiǎn)單應(yīng)用
- 利用FollowHyperlink方法打開超鏈接提示“無(wú)法下載您要求的信息”的解決方案
- 在access中用代碼打開文本框中超鏈接地址
- Activex控件或Dll 在某些電腦無(wú)法正常注冊(cè)的解決辦法(regsvr32注冊(cè)時(shí)卡住)
- office使用部分控件時(shí)提示“您沒有使用該ActiveX控件許可的問題”的解決方法
- RTF文件(富文本格式)的一些解析
- Access樹控件(treeview) 64位Office下出現(xiàn)橫向滾動(dòng)條不會(huì)自動(dòng)定位的解決辦法
- Access中國(guó)樹控件 在win10電腦 節(jié)點(diǎn)行間距太小的解決辦法
- EXCEL 2019 64位版(Office 2019 64位)早就支持64位Treeview 樹控件 ListView列表等64位MSCOMMCTL.OCX控件下載
- VBA或VB6調(diào)用WebService(直接Post方式)并解析返回的XML
- 早期PB程序連接Sqlserver出現(xiàn)錯(cuò)誤
- MMC 不能打開文件C:/Program Files/Microsoft SQL Server/80/Tools/Binn/SQL Server Enterprise Manager.MSC 可能是由于文件不存在,不是一個(gè)MMC控制臺(tái),或者用后來(lái)的MMC版
- sql server連接不了的解決辦法
- localhost與127.0.0.1區(qū)別
- Roych的淺談數(shù)據(jù)庫(kù)開發(fā)系列(Sql Server)
- sqlserver 自動(dòng)備份對(duì)備份目錄沒有存取權(quán)限的解決辦法
- 安裝Sql server 2005 express 和SQLServer2005 Express版企業(yè)管理器 SQLServer2005_SSMSEE
聯(lián)系人: | 王先生 |
---|---|
Email: | 18449932@qq.com |
QQ: | 18449932 |
微博: | officecn01 |