解决方案资源管理器——引用——(右击)添加引用——COM

1. 安装Office,添加引用COM里面的 Microsoft Word 14.0 Object. Library

2. 导命名空间 using MsWord =Microsoft.Office.Interop.Word;

3. 创建Word应用程序

把引用中的Microsoft.Office.Interop.Word属性中的嵌入互操作类型设为False

创建Word应用程序

MsWord .Application wordApp = new MsWord.ApplicationClass();

列:

private void button1_Click(object sender, EventArgs e)
{
//创建word应用程序
MsWord.Application wapp = new MsWord.ApplicationClass();
//设置该应用程序可见
wapp.Visible = true;
//创建一个空的文档
// MsWord.Document md = wapp.Documents.Add();
//根据模板创建文档
MsWord.Document md = wapp.Documents.Add("E;\\ceshi.docx");
//打开文档

MsWord.Document wordDoc = wordApp.Documents.Open(@"E:\aaa.doc");

6. 向word中添加内容

//加内容

MsWord.Application wordApp = new MsWord.ApplicationClass();造

MsWord.Document wordDoc = wordApp.Documents.Add();创建空白的

//Paragraphs是段落,可直接add,这里是最后一段范围

wordDoc.Paragraphs.Last.Range.Text = "这是第一行\n";//应用程序里在最后追加文字

wordDoc.Paragraphs.Last.Range.Text = "第二行开始了";//不加\n会被覆盖

wordDoc.Paragraphs.Last.Range.Text = "会覆盖的";

//直接添加段,不是覆盖

wordDoc.Paragraphs.Last.Range.Text += "不会覆盖的";

//添加在此段的文字后面,不是新段落

wordDoc.Paragraphs.Last.Range.InsertAfter("这是后面的内容");//在文档段落之后追加内容

wordApp.Visible = true;//除了打印可见,其他不可见就可

7、保存文档

wordApp.Visible = false; //不可见直接保存

wordDoc.SaveAs2(@"E:\bbb.docx");//另存为    save保存

wordDoc.Close(true);//关闭文档

wordApp.Quit();//释放Word进程  退出程序

8. 操作字体

//字体

wordDoc.Paragraphs.Last.Range.Font.Bold = 1;

wordDoc.Paragraphs.Last.Range.Font.Italic = 1;

wordDoc.Paragraphs.Last.Range.Font.Size = 32;

wordDoc.Paragraphs.Last.Range.Font.Name = "楷体";

wordDoc.Paragraphs.Last.Range.Font.Underline = MsWord.WdUnderline.wdUnderlineDash;

wordDoc.Paragraphs.Last.Range.Font.ColorIndex = MsWord.WdColorIndex.wdPink;

9. 创建表格

//表格,5行5列

MsWord.Table table = wordDoc.Paragraphs.Last.Range.Tables.Add(wordDoc.Paragraphs.Last.Range,5,5);

//设置边线可见

table.Borders.Enable = 1;

table.Borders.InsideColor = MsWord.WdColor.wdColorBlue;

table.Borders.OutsideColor = MsWord.WdColor.wdColorBlack;

table.Borders.OutsideLineWidth = MsWord.WdLineWidth.wdLineWidth025pt;

//表格加内容

for(int i =1 ;i<=5;i++)

{

for (int j = 1; j <= 5; j++)

{

table.Rows[i].Cells[j].Range.Text="第i行,第j列";

}

//下面这行代码设置表格一行的背景色
table.Rows[i].Shading.BackgroundPatternColor = MSWord.WdColor.wdColorDarkYellow;

10.如何插入图片?

wordDoc.InlineShapes.AddPicture(@"E:\cyl.jpg",false,true);

//设置图片宽高的绝对大小

//wordDoc.InlineShapes[1].Width = 200;

//wordDoc.InlineShapes[1].Height = 150;

//按比例缩放大小

wordDoc.InlineShapes[1].ScaleWidth = 30;

wordDoc.InlineShapes[1].ScaleHeight = 30;

11. 如何操作书签,在书签处添加内容

wordDoc.Bookmarks["xingming"].Range.Text = "马晨";

wordDoc.Bookmarks["xingbie"].Range.Text = "男";

wordDoc.Bookmarks["minzu"].Range.Text = "汉族";

wordDoc.Bookmarks["shengri"].Range.Text = "1991-6-1";

wordDoc.Bookmarks["zhengzhimianmao"].Range.Text = "共青团员";

wordDoc.Bookmarks["zhaopian"].Range.InlineShapes.AddPicture(@"e:\cyl.jpg");

wordDoc.Bookmarks["zhaopian"].Range.InlineShapes[1].Width = 80;

wordDoc.Bookmarks["zhaopian"].Range.InlineShapes[1].Height = 100;

12. 打印预览及打印

打印预览:

wordDoc.PrintPreview();

打印

wordDoc.PrintOut();

13. 注意:在隐藏的时候一定要注意代码最后写上关闭文档和程序

wordApp.Visible = false;

wordDoc.Close(false);

wordApp.Quit();

WinForm——操作word文档的更多相关文章

  1. iText操作word文档总结

    操作word文档的工具有很多,除了iText之外还有POI,但是POI擅长的功能是操作excel,虽然也可以操作word,但是能力有限,而且还有很多的bug,技术并不成熟,下面就重点介绍一种操作wor ...

  2. C#操作Word文档(加密、解密、对应书签插入分页符)

    原文:C#操作Word文档(加密.解密.对应书签插入分页符) 最近做一个项目,客户要求对已经生成好的RTF文件中的内容进行分页显示,由于之前对这方面没有什么了解,后来在网上也找了相关的资料,并结合自己 ...

  3. 利用Python操作Word文档【图片】

    利用Python操作Word文档

  4. Java文件操作系列[3]——使用jacob操作word文档

    Java对word文档的操作需要通过第三方组件实现,例如jacob.iText.POI和java2word等.jacob组件的功能最强大,可以操作word,Excel等格式的文件.该组件调用的的是操作 ...

  5. QTP操作word文档

    QTP可以对word文档进行操作,这里最主要展示的是向word文档写入内容,并保存的功能. Option explicit Dim wordApp Set wordApp = createobject ...

  6. c#中操作word文档-四、对象模型

    转自:http://blog.csdn.net/ruby97/article/details/7406806 Word对象模型  (.Net Perspective) 本文主要针对在Visual St ...

  7. python 操作word文档

    因为工作需要操作一些word文档,记录一下学习思路 #-*- encoding: utf8 -*- import win32com from win32com.client import Dispat ...

  8. 2.QT中操作word文档

     Qt/Windows桌面版提供了ActiveQt框架,用以为Qt和ActiveX提供完美结合.ActiveQt由两个模块组成: A   QAxContainer模块允许我们使用COM对象并且可以 ...

  9. C# 操作Word 文档——添加Word页眉、页脚和页码

    在Word文档中,我们可以通过添加页眉.页脚的方式来丰富文档内容.添加页眉.页脚时,可以添加时间.日期.文档标题,文档引用信息.页码.内容解释.图片/LOGO等多种图文信息.同时也可根据需要调整文字或 ...

随机推荐

  1. 【sqli-labs】 less15 POST - Blind- Boolian/time Based - Single quotes (基于bool/时间的单引号POST型盲注)

    错误不回显了 构造永真登陆 登陆成功了 虽然登陆成功了,但是数据库的数据还么有爆出来 构造一下用户名 ' or length(database())=8# 如果数据库名的长度不等于8,登陆会失败 猜测 ...

  2. sql_3 join

    http://www.cnblogs.com/rush/archive/2012/03/27/2420246.html  

  3. Coreldraw软件反盗版提示x8有优惠活动 cdr x8提示盗版怎么办?

    CorelDRAW X8装不上,我的悲伤有这么大,或者比这还大一点...♥♥♥如果你遇到这样的断了网,卸了装,装了卸,然后再安装的...╮(-_-)╭这样的保存和另存为都点不了,不敢关电脑的亦或是这样 ...

  4. ActionChains定位元素

    ActionChains UI自动化测试过程中,经常遇到那种,需要鼠标悬浮后,要操作的才会元素出现的这种场景,那么我们就要模拟鼠标悬浮到某一个位置,做一系列的连贯操作,Selenium给我们提供了Ac ...

  5. str使用注意点(未完待续)

    1.(切片)str[num1,num2],是指截取 str[num1] 到 str[num2-1] 直接的元素

  6. Python中字符串操作函数string.split('str1')和string.join(ls)

    Python中的字符串操作函数split 和 join能够实现字符串和列表之间的简单转换, 使用 .split()可以将字符串中特定部分以多个字符的形式,存储成列表 def split(self, * ...

  7. jvm学习-垃圾回收算法(三)

     垃圾回收算法  引用计数法 比较古老的一种垃圾回收算法.在java的GC并没有采用 增加一个引用 引用+1 减少一个引用引用减一 每次清除引用为0的的对象 缺点:不能回收循环引用的垃圾对象 标记清除 ...

  8. 运行npm run watch时报:events.js:182 throw er; // Unhandled 'error' event

    I had this issue i did the following steps and i have no issues anymore: Delete node_modules directo ...

  9. ZOJ 3717

    这题是二分+2SAT. 总结一下SAT题的特征.首先,可能会存在二选一的情况,然后会给出一些矛盾.据这些矛盾加边,再用SAT判定. 这一道题好像不能直接用printf("%0.3lf&quo ...

  10. nyoj-664-数字整除(水题)

    数字整除 时间限制:1000 ms  |  内存限制:65535 KB 难度: 描写叙述 定理:把一个至少两位的正整数的个位数字去掉,再从余下的数中减去个位数的5倍.当且仅当差是17的倍数时.原数也是 ...