RTF文件格式研究报告_第1页
RTF文件格式研究报告_第2页
RTF文件格式研究报告_第3页
RTF文件格式研究报告_第4页
RTF文件格式研究报告_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

RTF文献格式研究报告(代开版辞)[华普软件摘要:RTF文献格式RTF文献构造及特性进行了叙述,并分别列举了几个VBRTF书写器(不含有所见即所得特性)。RTF文献格式感爱好的人员含有参考价值。本文原始出处为:。核心字:RTF、RichTextFormat、Office、文献格式 在不同系统如MS-DOS、Windows、OS/2、Macintosh和PowerMacintosh的应用程序之间转移字解决文档。RTF规范提供一种在不同的输出设备、操作环境和操作系统之间交换文本和图形的一种格式RTF使用ANSI,PC-8,Macintosh,或IBMPC字符集控制文档的表达RTFRTF文献转换成格式化文献的软RTF阅读器。\<注意:每个控制字均以一种反斜杠\a~z的小写字母构成。控制字(或者称为核心分隔符RTF控制字的结束能够是下列各项之一了字母和数字的其它字符划定。这个参数能够是正数或者负数,它的取值范畴普通是从-32767解)、文献头和文献尾、摘要信息、域和书签的组合,以及文档、区段、段落和字符的格式属性。如果涉RTF文献的具体语法及核心字阐明请参阅《RichTextFormatRTFSpecificationv1.7三、HelloHelloWord!{\fonttbl{\f0\fmodern\fprq6\fcharset134{\*\generatorMsftedit5.41.21.2500;}\viewkind4\uc1\pard\lang2052\f0\fs20Hello该文献分析以下(红色1{\rtf1RTF\ansi字符集\ansicpg936简体中文\deff00\deflang1033{\fonttbl{\f00\fmodern\fprq66\fcharset134GB2312\'cb\'ce\'cc\'e5宋3{\*\generatorMsftedit5.41.21.2500;}\viewkind4\uc1单字节\pard\lang2052中国汉语\f00\fs20磅5HelloWorld!\par}ASCIIVBPublicFunctionStrToASC(ByValstrInAsString)AsStringASC(涉及英文一起)strIn=Replace(strIn,Chr(9),"\TABstrIn=Replace(strIn,Chr(13)+Chr(10),"\parDimiAsLong,sAsString,lsCharAsString,lsPart1AsString,lsPart2AsStringDimlsCharHexAsStringFori=1ToLen(strIn)lsChar=Mid(strIn,i,1)IflsChar="?"lsCharHex=IfLen(lsCharHex)=4lsCharHex="\'"+Mid(lsCharHex,1,2)+"\'"+Mid(lsCharHex,3,lsCharHex=lsCharEndIfs=s+lsCharHex=IfLen(lsCharHex)=4lsCharHex="\'"+Mid(lsCharHex,1,2)+"\'"+Mid(lsCharHex,3,lsCharHex=lsCharEndIfs=s+lsCharHexEndIfStrToASC=sEndV1.7规范中都作了具体描述,本文只列出部分惯用核心字,以供参考。{\f0\froman\fcharset0\fprq2{\*\panose0304}TimesNew{\f1\fswiss\fcharset0\fprq2{\*\panose{\f10\fnil\fcharset2\fprq2{\*\panose…}我们在使用字体时,就能够直接指定字体表的一种索引,如:“\f1Happy”Arial的文在需要时引用该字体索引值即可。办法为(ASCII{f222\fnil\fcharset134\fprq2\'bb\'aa\'ce\'c4\'d6\'d0\'cb\'ce;}\f222192\green192\blue192;……}指定某一种颜色索引值,如“\cf2Sunday”RGB(0,0,255)Sundy。控制 涵 () N N N (字体索引为222)、颜色为红色颜色索引为6)\f222\cf6\'bb\'aa\'ce\'c4\'d6\'d0\'cb\'ce即可。控制 涵 \ul0 下划线颜色。(N表示一种索引数字,下同 控制 涵 控制 涵 \outl0 小体大写字母。scaps0 阴影。shad0 控制 涵 控制 涵 左对齐(默认) Kashida规则调节行比例(0-低、1020-高) .控制 涵 (0) 采用字符单位的比例的首行缩进值,用以覆盖\fiN的设立,即使它们能够设为相似值。 左端缩进(0) 从左至右段落的左端缩进值;如果在从右至左段落则表达右端缩进值( (0) 从左至右段落的右端缩进值;如果在从右至左段落则表达左端缩进值( 设立,即使它们能够设为相似值。 (0) 段前间隔(0)

段前间距取决于\sb0。段后间距取决于\sa0。 \sbN \saN \sl0,则行间距将根据行间字符最高N的绝对值。

由于篇幅限制,更具体的文本格式分析请参阅附件16进制(默认的)2进制格式。图象属于目的引用,由\pict控制字开始。如背面的例子中将描述的,\pict核心字应在\*\shppict引用控制核心字之后。0}}{\sp{\snpibFlags}{\sv2}}{\sp{\snfLine}{\sv0}}{\sp{\snfLayoutInCell}{\sv1}}}{\*\blipuidd48e1d9b2268ef9ffb439c}ffd8ffe000104a00ffdb0bb0c0a0a0b0a0a0c100c0c0c0c0c0c100c0e0f……}}{\nonshppict{\pict\picscalex100\picscaley100\piccropl0\piccropr0\piccropt0\piccropb0\picw4{\*\blipuidd48e1d9b2268ef9ffb439c}00b000c02ac00ace00……}}其分析以下(红色{\*\shppict图片(引用{\pict绘图对象属性(这个组能够省略{\*\picprop表示这里是应用于一种内嵌图象的形状属性\shplid1025{\sp{\snshapeType}{\sv75}}{\sp{\snfFlipH}{\sv0}}水平翻转{\sp{\snfFlipV}{\sv0}}垂直翻转{\sp{\snpibFlags}{\sv2}}{\sp{\snfLine}{\sv0}}具有线条{\sp{\snfLayoutInCell}{\sv1}}允许图形锚点定位在单元格内部}\picscalex100水平缩放比例\picscaley100\piccropl0左端剪切值=0\piccropr0右端剪切值=0\piccropt0上端剪切值=0\piccropb0下端剪切值盼望高度\jpegblipJPEG\bliptagID-{\*\blipuid16ffd8ffe000104a00ffdb0bb0c0a0a0b0a0a0c100c0c0c0c0c0c100c0e0f}16}wMetaFile(可用省略{\nonshppict{\pict{\*\blipuidd48e1d9b2268ef9ffb439c}MetaFile16}MetaFile16}度\pichgoal显示高度\jpegblipJPEG\bliptag-ID值(为一种负的长整形值)ffd8ffe0001……}}16VBPublicFunctionPicToASC(ByValstrFileNameAsString)AsString16DimbData()AsByteDimiAsLongDimlNumAsDimstrDataAsString,strTMPAsStringlNum=FreeFileOpenstrFileNameForBinaryAs#lNumReDimbData(LOF(lNum)-1)Get#lNum,,bDataClose#lNumstrData=Space((UBound(bData)+1)*2)Fori=0ToUBound(bData)strTMP=IfLen(strTMP)=1ThenstrTMP="0"+strTMPEndMid(strData,i*2+1)=PicToASC=strDataEndFunctionRTFRTF文献从前一段落继承。一种单元内可能有多个段落;单元由单元格标志(\cell控制字)结束,行由行标志(\row控制字)结束。表行也能够被绝对定位。此时,表行的每个段落必须含有相似的定位控制字。表的属性能RTF\trowd\irow0\irowband0\ts15\trgaph108\trleft-\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrh\brdrs\brdrw10\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\brdrs\brdrw10\cellx2732\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth2841\clshdrawnil\cellx8414\pard\plain{\insrsid2113686\hich\af0\dbch\af13\loch\f01,1\cell\hich\af0\dbch\af13\loch\f0\hich\af0\dbch\af13\loch\f01,3\cell\ql{\insrsid2113686\trowd\irow0\irowband0\ts15\trgaph108\trleft-\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrh\brdrs\brdrw10\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\brdrs\brdrw10\cellx2732\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth2841\clshdrawnil\cellx8414\row}\pard\plain{\insrsid2113686\hich\af0\dbch\af13\loch\f02,1\cell\hich\af0\dbch\af13\loch\f0\hich\af0\dbch\af13\loch\f02,3\cell\ql{\insrsid2113686\trowd\irow1\irowband1\lastrow\ts15\trgaph108\trleft-\brdrs\brdrw10\trbrdrl\brdrs\brdrw10\trbrdrb\brdrs\brdrw10\trbrdrh\brdrs\brdrw10\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\brdrs\brdrw10\cellx2732\clvertalt\clbrdrt\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrr\brdrs\brdrw10\brdrs\brdrw10\clbrdrl\brdrs\brdrw10\clbrdrb\brdrs\brdrw10\cltxlrtb\clftsWidth3\clwWidth2841\clshdrawnil\cellx8414\row构造一目了然。首先需要声明的是,RTF1.7规范中规定,表行的格式以下:(<tbldef><cell>+义”构成,其中单元格定义可用重复。1行边框设立\trbrdrt行的上边框\brdrs单倍厚度\brdrw10\trbrdrl行的左边框\brdrs单倍厚度\brdrw10\trbrdrb行的下边框\brdrs单倍厚度\brdrw10\trbrdrr行的右边框\brdrs\brdrw101\clbrdrt单元格上边框\brdrw15线宽\brdrs\clbrdrl单元格左边框\brdrw15线宽\brdrs\clbrdrb单元格下边框\brdrw15线宽\brdrs\clbrdrr单元格右边框\brdrw15线宽\brdrs2\clbrdrt单元格上边框\brdrw15线宽\brdrs\clbrdrl单元格左边框\brdrw15线宽\brdrs\clbrdrb单元格下边框\brdrw15线宽\brdrs\clbrdrr单元格右边框\brdrw15线宽\brdrs3\clbrdrt单元格上边框\brdrw15线宽\brdrs\clbrdrl单元格左边框\brdrw15线宽\brdrs\clbrdrb单元格下边框\brdrw15线宽\brdrs\clbrdrr单元格右边框\brdrw15线宽\brdrs1\pard重置段落属性\intbl\kerning2\f00\fs21211,11,1\cell11,21,2\cell21,31,3\cell3\f1\row1\f0\trowd2行边框设立1232\intbl2,12,1\cell12,22,2\cell22,32,3\cell3\f1\row2RTF表格输出有一定认识了吧。固然在表格中插入图片、嵌入表格等的实现办法同理,RichTextFormat(RTFSpecificationv1.7》。RTFRTFRTF<File>文献头RTF字符集颜色表编目表编目表{\*\listtable编目替代表{\*\listoverridetable段落组属性{\*\pgptbl公司注释文档的版本号字数ID\id?节格式属性文本隐藏与否(/v表格图片开始{\*\shppict{\pict对象RTFDimmyRTFasNewRTFCreator.clsRTFCreatorWithmyRTF.PageHead="页眉".PageHeadAlign=alm1_左端对 ‘页眉对齐方.PageFooter="时间:"&Format(Now,"YYYYMMDDHH:nn:ss").PageNumber= .PageNumberAlign=alm3_居右对齐‘页码对齐方式End符样式(现在为固定样式myRTF.Texts(i).Bold=True.LastText.Bold= .LastText.FontStyle=ft1_

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论