C#生成word文档之绝对最全_第1页
C#生成word文档之绝对最全_第2页
C#生成word文档之绝对最全_第3页
C#生成word文档之绝对最全_第4页
C#生成word文档之绝对最全_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

1、C#生成word文档之绝对最全最近两天研究了一下如何使用VS2008(C#语言输出Word文档。以下是几点总结:1、非常简单。3、C#工程设置。这里的工程设置,就是添加com组件。步骤为:在工程资源管理器中"添加引用"->"com"选项卡->在下拉列表中选Microsoft word 11.0 Object Library。ok了,看上去,跟添加一般的dll一样,但实际上vs2008在这个过程中完成一系列复杂的关于.net调用com组件的操作,不过,幸好我们不用管这个。5、最好是对word对像模型有一定的了解,这样在写代码的时候就不会那么“迷

2、茫”了。wore对像模型中有几个比较重要的对像,它们是Application、Document、Selection、Range、Bookmark,以及其它的一些对像,如:Paragraph、Section、Table等级。刚开始学的时候,感觉Selection、Range、Bookmark这几个对像有点迷惑人,Selection可能好理解,就是表示当前的选择区域,如果没有选择就表示光标所在位置。Range和Bookmark,其实在很多地方很像,不过也有一些区别,在这里就不多说了,google一下"word.Range"就行了。6、在写代码的过程中,经常会想要实现的一些操作,

3、但是由于对word对像不熟悉而不知怎么用代码实现。比如设置页眉、添加页码什么的,如果在Word程序里手动的操作当然很简单,但是要用代码来实现,对初学者来说就可能不那么容易了。遇到这种情况,一般有两种方法可以选择:一种是"百度/google法",别一种,也是我所推荐的一种就是,利用Word的“录制宏”功能把想要实现的操作录成宏之后,再看宏里的代码,宏里的代码其实几乎就是你想要的代码了(只不过语法有一点不一样而已)。7、以下给出一个示例,这个示例里面包括了一些常用的图、文、表、公式的编辑与排版以及页面设置、页眉、页码的操作,里面都有注释,写得很清楚。using System;u

4、sing System.ComponentModel;using System.Data;using System.Drawing;using System.Text;namespace WindowsFormsApplication1DllImport("shell32.dll "public static extern int ShellExecute(IntPtr hwnd, String lpszOp, String lpszFile, String lpszParams, String lpszDir, int FsShowCmd; public Form1(In

5、itializeComponent(;private void button1_Click(object sender, EventArgs e/新建文档/ Word.Application newapp = new Word.Application(;/用这句也能初始化Word.Application newapp = new Word.ApplicationClass(;Word.Document newdoc;newapp.Visible = true ;/是否显示word程序界面/页面设置/设置页眉/插入页眉图片string headerfile = "d:header.jp

6、g"shape1.Height = 30;shape1.Width = 80;/去掉页眉的那条横线/添加页码pns.HeadingLevelForChapter = 0;pns.IncludeChapterNumber = false;pns.RestartNumberingAtSection = false;pns.StartingNumber = 0;object first=true; /文字设置(Selection表示当前选择集,如果当前没有选择对像,则指对光标所在处进行设置/段落设置/插入公式object oEndOfDoc="endofdoc"obje

7、ct formula = "eq i(a,b,xdx"object presrveFormatting = false;rang1.Text = formula.ToString(;/将文档的前三个字替换成"asdfasdf",并将其颜色设为蓝色object start=0;object end=3;Word.Range rang2 = newdoc.Range(ref start, ref end;rang2.Text = "as签"/将文档开头的"as"替换成"袁波"rang1.Start

8、= 0;rang1.End = 2;rang1.Text = "这是一个"rang1.InsertAfter("书"/rang1.Select(;rang1.Collapse(ref codirection;/将rang1的起点和终点都定于起点或终点/对前三个字符进行加粗newdoc.Range(ref start, ref end.Bold = 1;object rang = rang2;/插入图片object LinkToFile = false;object SaveWithDocument = true;string picname = &quo

9、t;d:kk.jpg"newdoc.InlineShapes1.Height = 200;newdoc.InlineShapes1.Width = 200;/用这种方式也可以插入公式,并且这种方法更简单/插入表格table1.Select(;table1.Rows2.Height = 20;table1.Rows3.Height = 20;table1.Rows4.Height = 20;table1.Columns1.Width = 75;/表头斜线/表格边框/合并单元格newdoc.Tables1.Cell(4, 2.Merge(table1.Cell(4, 3;/删除图片thi

10、s.delpictfile(headerfile;this.delpictfile(picname;/保存文档object name = "c:yb3.doc"newdoc.SaveAs(ref name, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing,ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing, ref nothing,ref nothing, ref nothing;/关闭文档newdoc.Close(ref nothing , ref nothing, ref nothing;newdoc = null;newapp =

温馨提示

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

评论

0/150

提交评论