rtf文档怎么做表格Word下载.docx
《rtf文档怎么做表格Word下载.docx》由会员分享,可在线阅读,更多相关《rtf文档怎么做表格Word下载.docx(8页珍藏版)》请在冰豆网上搜索。
“先用我的程序存成rtf,然后再用word......”。
下面将对rtf文件结构分析及其应用进行讨论。
一、rtf文件结构分析
rtf的结构并不复杂,但内容繁多,本文不可能一一说明,只能从总体上讨论一下(如果想阅读详尽的rtf文档,则可在internet上寻找或与笔者联系。
)每个rtf文件都是一个文本文件,显示时由rtf阅读器格式化。
文件开始处是{\rtf,它作为rtf文件的标志是必不可少的,rtf阅读器根据它来判断一个文件是否为rtf格式。
然后是文件头和正文,文件头包括字体表、文件表、颜色表等几个数据结构,正文中的字体、表格的风格就是根据文件头的信息来格式化的。
每个表用一对大括号括起来,当中包含了很多用字符“\”开始的命令。
例如,某个颜色表如下:
{\colortbl;
\red0\green0\blue0;
\red0\green0\blue255;
\red0\green255\blue255;
\red0\green255\blue0;
\red255\green0\blue255;
\red255\green0\blue0;
\red255\green255\blue0;
\red255\green255\blue255;
\red0\green0\blue128;
\red0\green128\blue128;
\red0\green128\blue0;
\red128\green0\blue128;
\red128\green0\blue0;
\red128\green128\blue0;
\red128\green128\blue128;
\red192\green192\blue192;
}
开始时用\colortbl标明大括号内是颜色表,接着是\red0\green0\blue0,登记了一种颜色,这种颜色的红绿蓝分量都为0。
其它表依此类推。
文件头之后是正文,正文由版面格式化命令、文字和各种特殊命令组成。
其中只有特殊命令用大括号括起来,而版面格式化命令和文字是“开放式”的,从而把文字和命令分离。
文件结束时有一个“}”,和第一个“{”对应。
在整个文件中,“}”和“{”必须一一对应。
这种格式是rtf阅读器和转换器算法的基础。
rtf格式还有一个特别之处,就是有些字符在命令中有特殊的含义,所以当它们作为文本出现时需要在它们的前面加一个“\”,例如“\”本身就要表示为“\\”。
事实上,这种形式在大多数编程语言中是很常见的。
二、算法分析
本节介绍的算法虽然是针对rtf的读写,但也是一般文件过滤器通用的方法,适用于各种格式文件之间的转换。
具体来说就是把各种文件都转换成一种中间格式,再根据要求进行显示或转换。
其中有个原则是一定要遵守的:
程序必须能过滤掉不认识的格式。
各种文件都有其特殊的格式,在转换过程中不可避免会出现格式损失的现象,在算法中要考虑这种情况。
对于rtf这类格
式化文本文件来说,最重要的是要正确地显示或转换文件的大小、颜色、字体等风格。
因此,在程序中应该用一个数据结构把这些信息存起来,这个结构就是所谓的中间格式,怎样规定悉听尊便。
以下是其流程图:
三、难点分析
在开发过程中我们遇到了不少问题,其中有两个问题特别有意思。
第一个问题是中文的表示方式。
在rtf中中文用命令的形式表示:
“\内码”。
内码就是汉字机内码。
不过,请注意:
rtf是文本文件,内码是用ascii码来储存的,必须把它转换成数字才能使用。
例如,“电子与电脑”在rtf中的形式是:
\b5\e7\d7\d3\d3\eb\b5\e7\c4\d4
第二个是图片的问题,这也是本文的重点。
rtf中图片以两种方式存在:
第一种方式是直接嵌入,以{\pict开始;
第二种方式是作为ole对象嵌入,这时以{\object开始。
当rtf处理器能直接使用ole时,rtf文件中提供了ole的数据;
否则,文件中直接提供图片的数据,以{\result开始。
在使用中最常见的图片格式是内含dibbitmap的元文件(metafile),这种格式在sdk中没有说明,而且在rtf中是以压缩形式储存的,所以在转换时有一定困难。
我们采取了一种比较新的方法:
先把metafile的数据读出来存成一个文件,然后用getmetafile和playmetafile函数把文件中的图形打印在一个内存dc上,最后用抓图的方法把它存成bitmap文件。
以下是具体程序:
voidwmftobmp(intwidth,intheight,char*metafile)
{
//width为图片宽度,height为图片高度,*metafile为元文件名
statichmetafilehmf;
charnum[4];
file*fh;
hdchmemdc;
hbitmaphbmp,hold;
bitmapfileheaderhdr;
lpbitmapinfoheaderlpbmpih;
hglobalhg;
bitmapcount++;
if(bitmapcount==3)
width=128;
height=132;
}
if(bitmapcount==1)
width=80;
height=50;
tostring10(bitmapcount,num);
//把字符串转换成数字的函数
lstrcpy(bmpfile,filepath);
lstrcat(bmpfile,num);
lstrcpy(giffile,bmpfile);
lstrcat(bmpfile,"
.bmp"
);
lstrcat(giffile,"
.gif"
hmf=getmetafile(metafile);
hdisplaydc=createdc("
display"
null,null,null);
hmemdc=createcompatibledc(hdisplaydc);
hg=globalalloc(ghnd,sizeof(bitmapinfoheader));
lpbmpih=(lpbitmapinfoheader)globallock(hg);
lpbmpih->
bisize=sizeof(bitmapinfoheader);
biwidth=width;
biheight=height;
biplanes=1;
bibitcount=8;
bicompression=0;
hbmp=createcompatiblebitmap(hdisplaydc,width,height);
globalunlock(hg);
globalfree(hg);
hold=selectobject(hmemdc,hbmp);
setmapmode(hmemdc,mm_anisotropic);
setwindoworgex(hmemdc,0,0,null);
setviewportextex(hmemdc,width,height,null);
playmetafile(hmemdc,hmf);
hbmp=selectobject(hmemdc,hold);
if((fh=fopen(bmpfile,"
w+b"
))==null)
return;
hdr.bftype=0x4d42;
hdr.bfsize=sizeof(bitmapfileheader)+sizeof(bitmapinfoheader)+256*sizeof(rgbquad)+width*height;
hdr.bfreserved1=0;
hdr.bfreserved2=0;
hdr.bfoffbits=sizeof(bitmapfileheader)+sizeof(bitmapinfoheader)+256*sizeof(rgbquad);
fwrite((lpstr)
hg=globalalloc(ghnd,sizeof(bitmapinfoheader)+256*sizeof(rgbquad));
bisizeimage=width*height;
biclrused=256;
biclrimportant=0;
j=getdibits(hmemdc,hbmp,0,height,null,(bitmapinfo*)lpbmpih,dib_rgb_colors);
lpbmpih->
fwrite(lpbmpih,sizeof(bitmapinfoheader)+256*sizeof(rgbquad),1,fh);
getdibits(hmemdc,hbmp,0,height,(lpstr)filebuffer,(bitmapinfo*)lpbmpih,dib_rgb_cols);
fwrite(filebuffer,width*height,1,fh);
篇三:
教你如何用word文档
教你如何用woRd文档(20xx-06-27192246)转载▼
标签:
杂谈
1.问:
woRd里边怎样设置每页不同的页眉?
如何使不同的章节显示的页眉不同?
答:
分节,每节可以设置不同的页眉。
文件――页面设置――版式――页眉和页脚――首页不同。
2.问:
请问word中怎样让每一章用不同的页眉?
怎么我现在只能用一个页眉,一改就全部改了?
在插入分隔符里,选插入分节符,可以选连续的那个,然后下一页改页眉前,按一下“同前”钮,再做的改动就不影响前面的了。
简言之,分节符使得它们独立了。
这个工具栏上的“同前”按钮就显示在工具栏上,不过是图标的形式,把光标移到上面就显示出”同前“两个字来。
3.问:
如何合并两个woRd文档,不同的页眉需要先写两个文件,然后合并,如何做?
页眉设置中,选择奇偶页不同与前不同等选项。
4.问:
woRd编辑页眉设置,如何实现奇偶页不同比如:
单页浙江大学学位论文,这一个容易设;
双页:
(每章标题),这一个有什么技巧啊?
插入节分隔符,与前节设置相同去掉,再设置奇偶页不同。
5.问:
怎样使woRd文档只有第一页没有页眉,页脚?
页面设置-页眉和页脚,选首页不同,然后选中首页页眉中的小箭头,格式-边框和底纹,选择无,这个只要在“视图”――“页眉页脚”,其中的页面设置里,不要整个文档,就可以看到一个“同前”的标志,不选,前后的设置情况就不同了。
6.问:
如何从第三页起设置页眉?
在第二页末插入分节符,在第三页的页眉格式中去掉同前节,如果第一、二页还有页眉,把它设置成正文就可以了
●在新建文档中,菜单―视图―页脚―插入页码―页码格式―起始页码为0,确定;
●菜单―文件―页面设置―版式―首页不同,确定;
●将光标放到第一页末,菜单―文件―页面设置―版式―首页不同―应用于插入点之后,确定。
第2步与第三步差别在于第2步应用于整篇文档,第3步应用于插入点之后。
这样,做两次首页不同以后,页码从第三页开始从1编号,完成。
7.问:
woRd页眉自动出现一根直线,请问怎么处理?
格式从“页眉”改为“清除格式”,就在“格式”快捷工具栏最左边;
选中页眉文字和箭头,格式-边框和底纹-设置选无。
8.问:
页眉一般是---------,上面写上题目或者其它,想做的是把这根线变为双线,woRd中修改页眉的那根线怎么改成双线的
按以下步骤操作去做:
●选中页眉的文字,包括最后面的箭头●格式-边框和底纹●选线性为双线的●在预览里,点击左下小方块,预览的图形会出现双线●确定▲上面和下面自己可以设置,点击在预览周围的四个小方块,页眉线就可以在不同的位置。
9.问:
word中的脚注如何删除?
把正文相应的符号删除,内容可以删除,但最后那个格式还在,应该怎么办?
步骤如下:
1、切换到普通视图,菜单中“视图”――“脚注”,这时最下方出现了尾注的编辑栏。
2、在尾注的下拉菜单中选择“尾注分隔符”,这时那条短横线出现了,选中它,删除。
3、再在下拉菜单中选择“尾注延续分隔符”,这是那条长横线出现了,选中它,删除。
4、切换回到页面视图。
尾注和脚注应该都是一样的。
10.问:
word里面有没有自动断词得功能常常有得单词太长了,如果能设置下自动断词就好了
在工具―语言―断字―自动断字,勾上,word还是很强大的。
11.问:
如何将word文档里的繁体字改为简化字?
工具―语言―中文简繁转换。
12.问:
怎样微调woRd表格线?
woRd表格上下竖线不能对齐,用鼠标拖动其中一条线,可是一拖就跑老远,想微调表格竖线让上下对齐,请问该怎么办?
选定上下两个单元格,然后指定其宽度就可以对齐了,再怎么拉都行pressalt,打开绘图,其中有个调整坐标线,单击,将其中水平间距与垂直间距都调到最小值即可。
打开绘图,然后在左下脚的绘图网格里设置,把水平和垂直间距设置得最小。
13.问:
怎样微调word表格线?
我的word表格上下竖线不能对齐,用鼠标拖动其中一条线,可是一拖就跑老远,我想微调表格竖线让上下对齐,请问该怎么办?
可以如下操作:
●按住ctl键还是shift,你haveatry●doubleclicktheline,tryit)●打开绘图,设置一下网格(在左下角)。
使水平和垂直都为最小,试一把!
?
●pressalt
14.问:
怎么把word文档里已经有的分页符去掉?
先在工具――选项――视图――格式标记,选中全部,然后就能够看到分页符,delete就ok了。
15.问:
word中下标的大小可以改的吗
格式―字体
16.问:
word里怎么自动生成目录啊
用“格式样式和格式”编辑文章中的小标题,然后插入-索引和目录
17.问:
word的文档结构图能否整个复制论文要写目录了,不想再照着文档结构图输入一遍,有办法复制粘贴过来吗?
可以自动生成的,插入索引目录。
18.问:
做目录的时候有什么办法时右边的页码对齐?
比如:
1.1标题..........11.2标
题...............2
画表格,然后把页码都放到一个格子里靠右或居中,然后让表格的线条消隐就可以了,打印出来就很整齐。
19.问:
怎样在word中将所有大写字母转为小写?
比如一句全大写的转为全小写的答:
格式-更改大小写-小写
20.问:
在存盘的时候,出现了问题,症状如下:
磁盘已满或打开文件过多,不能保存,另开新窗口重存也不管用。
如何解决?
把word文档全选,然后复制,然后关掉word,电脑提示你粘贴板上有东西,要不要用于别的程序,选是,然后,再重
新打开word,然后粘贴,然后,保存。
21.问:
woRd中的表格一复制粘贴到ppt中就散掉了,怎么把woRd里面的表格原样粘贴到ppt中?
1)比较好的方法是:
先把表格单独存为一woRd文件,然后插入--对象,选由文件创建,然后选中上面的woRd文件,确定;
2)还可以先把表格copy到excel中,然后copy到ppt中,这个也是比较好的办法;
3)可以先做成文本框,再粘贴过去;
4)复制粘贴,但是在ppt中不能粘在文本框里面;
5)拷屏,做成图片,再弄到ppt里面。
22.问:
有没有办法将ppt的文字拷入woRd里面?
另存就可以了。
只要以.rtf格式另存即可
23.问:
word中图片的分栏如何处理?
假如有:
12图34这样的结构,我想实现:
13图
(要横跨两栏)24但是,试了半天总是:
12图34怎么办呀?
help!
设置图片格式――版式――高级――文字环绕――环绕方式选上下型――图片位置――对齐方式选居中――度量依据选页面,要先改文字环绕,然后才能改图片位置
24.问:
用word写东西时字距老是变动,有时候自动隔得很开,有时候进入下一行的时侯,上一行的字距又自动变大了,这是为什么?
怎么纠正啊?
是因为自动对齐的功能,格式――段落――对齐方式可以选。
还有允许断字的功能如果check上,就不会出现你说的情况了。
25.问:
在使用woRd的样式之后,如标题1、标题2之类的,在这些样式前面总会出现一个黑黑的方块,虽然打印的时候看不到,但看着总是不舒服,有没有办法让它不要显示呢?
答:
“视图”--“显示段落标志”,把前面的勾去掉。
其实这个很有用,可以便于知道哪个是标题段落
26.问:
文章第一页下面要写作者联系方式等。
通常格式是一条短划线,下面是联系方式,基金支持等。
这样的格式怎么做出来?
就是注明页脚吗?
插入――脚注和尾注
27.问:
文字双栏,而有一张图片特别大,想通栏显示,应该怎么操作?
可以选择的内容,按双栏排。
选择其他内容,按单栏排。
28.问:
word里面如何不显示回车换行符?
把视图-显示段落标记的勾去掉或工具-选项-视图-段落标记
29.问:
有没有方法把woRd里的软回车一下子替换掉?
识别出来的文字全带着软回车,能把他们一次全删掉吗?
查找+替换,按ctRl+h;
软回车好象是^l,在特殊字符里有
30.问:
在woRd里的框框里怎么打勾?
画个文本框,文本框里写一个钩,然后拖过去;
或者先在woRd里插入符号“√”,然后选中“√”,到-》格式-》中文版式-》带圈字符-》选“□”
31.问:
还是不行,这样拷过去的框框字体是windings的,而原来的是宋体的,两者有很大的区别。
根据模板新建专业型传真,里面有框,双击后打勾,copy就ok
32.问:
word中怎么在一个英文字母上打对号?
透明方式插入图片对象,内容是一个√
33.问:
woRd里怎么显示修订文档的状态?
文档修订后,改后标记很多,但是在菜单里没有“显示修订最终状态”等,怎么调出来?
工具-自定义-命令-类别(工具)-命令(修订)-把“修订”等拖到工具栏上
34.问:
怎样把许多分开的word文档合并成一个文档。
我的论文是按照章节分开写的,但现在图书馆要提交电子版的学位论文,是一个文档的,我找了很多选项但好象不能合并,选择插入文件功能,可以加入内容,但文档中的页眉却插不进去,有谁有高见?
acrobat6可以直接把多个文档打印成一个pdf文档。
可以提交pdf格式的论文,先一个一个word文档转换为pdf格式的,然后在pdf文档菜单的文件菜单中,选上作为pdf格式打开,追加上就可。
35.问:
word里面要写方程式怎么办啊?
插入-对象-公式编辑器equation,如果没有公式编辑器equation,要自己从光盘中安装,或者安装mathtype公式编辑器按右键把它拖出来--插入--命令--自定义--工具应该是倒过来
36.问:
想在woRd里面表示矩阵,怎样才能画出那个很大的矩阵括号?
装公式编辑器mathtype好了~:
)
37.问:
word的公式编辑器怎么安装?
工具-自定义-插入-公式编辑器,把它拖到工具条上即可;
或者安装oFFice后,再次安装,选增加功能吧,会有提示的
38.问:
word2000下调用公式编辑器的快捷键
点击菜单[工具]-[自定义],点击对话框下方[键盘],在[类别]里选择[插入],在命令里选择[insertequation],指定你的快捷方式
39.问:
woRd中出现公式的行往往要比只有文字的行来得宽,如何把这些行改的跟只有文字的行一样宽?
段落行距设为固定值即可。
这样会有一个问题,比如设置为18磅,有些公式符号(特别是有下标的)不能全部显示打印稿可以显示。
怎么解决这个问题?
这个如何解决还需要考虑。