WinForm——操作word文档
解决方案资源管理器——引用——(右击)添加引用——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文档的更多相关文章
- iText操作word文档总结
操作word文档的工具有很多,除了iText之外还有POI,但是POI擅长的功能是操作excel,虽然也可以操作word,但是能力有限,而且还有很多的bug,技术并不成熟,下面就重点介绍一种操作wor ...
- C#操作Word文档(加密、解密、对应书签插入分页符)
原文:C#操作Word文档(加密.解密.对应书签插入分页符) 最近做一个项目,客户要求对已经生成好的RTF文件中的内容进行分页显示,由于之前对这方面没有什么了解,后来在网上也找了相关的资料,并结合自己 ...
- 利用Python操作Word文档【图片】
利用Python操作Word文档
- Java文件操作系列[3]——使用jacob操作word文档
Java对word文档的操作需要通过第三方组件实现,例如jacob.iText.POI和java2word等.jacob组件的功能最强大,可以操作word,Excel等格式的文件.该组件调用的的是操作 ...
- QTP操作word文档
QTP可以对word文档进行操作,这里最主要展示的是向word文档写入内容,并保存的功能. Option explicit Dim wordApp Set wordApp = createobject ...
- c#中操作word文档-四、对象模型
转自:http://blog.csdn.net/ruby97/article/details/7406806 Word对象模型 (.Net Perspective) 本文主要针对在Visual St ...
- python 操作word文档
因为工作需要操作一些word文档,记录一下学习思路 #-*- encoding: utf8 -*- import win32com from win32com.client import Dispat ...
- 2.QT中操作word文档
Qt/Windows桌面版提供了ActiveQt框架,用以为Qt和ActiveX提供完美结合.ActiveQt由两个模块组成: A QAxContainer模块允许我们使用COM对象并且可以 ...
- C# 操作Word 文档——添加Word页眉、页脚和页码
在Word文档中,我们可以通过添加页眉.页脚的方式来丰富文档内容.添加页眉.页脚时,可以添加时间.日期.文档标题,文档引用信息.页码.内容解释.图片/LOGO等多种图文信息.同时也可根据需要调整文字或 ...
随机推荐
- 输出字符串格式化/ Linq对数组操作 /一个按钮样式
textBox1.Text = dateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss"); , , , , , , , , , , ...
- SharePoint Designer 2013 开启新式验证(Modern Authentication)
首先安装office 2013全家桶 再安装SharePoint Designer 2013 安装完之后,去windows检查更新,并把所有需要更新的都更新了 (更新之后我还通过KMS激活了offic ...
- Lua操作系统库、流、文件库
Lua操作系统库.流.文件库 1.Lua中所有的操作系统库函数 (1)os.clock() --功能:返回执行该程序cpu花费的时钟秒数 (2)os.time(...) --按参数的内容返回一个时间值 ...
- Vue CLI 3.x 简单体验
文档 中文文档 补充于02月10日 vue脚手架的3.x版本已经在开发中,现在还处于alpha版本.我们来看看有哪些变化. 使用 npm install -g @vue/cli 命名方式已经改为npm ...
- tornado服务器运行django应用
在jumpserver项目中看到的 def main(): from django.core.wsgi import get_wsgi_application import tornado.wsgi ...
- flask-sqlalchemy 配置 mysql (转载的文章)
一.当然是把必备的包给安装上才行: Flask-SQLAlchemy pip install flask-sqlalchemy MySQL windows下64位压缩包的安装方式可以参考: http: ...
- win7的目录和vbox的共享,linux中没有权限打开
来自于 http://www.cnblogs.com/usegear/p/5120427.html win7的目录由vbox共享是个老话题.稳拿网上很多介绍. 在linux中通过文件夹不能打开,说没有 ...
- mysql 的load data infile
LOAD DATA INFILE语句从一个文本文件中以很高的速度读入一个表中.如果指定LOCAL关键词,从客户主机读文件.如果LOCAL没指定,文件必须位于服务器上.(LOCAL在MySQL3.22. ...
- Redis容量及利用计划
在利用Redis过程当中,咱们发明了很多Redis分歧于Memcached,也差别于MySQL的特点.(本文首要会商Redis未启用VM撑持环境) 1. Schema MySQL: 需事先设计Memc ...
- HDU 1115
题意很明白要求多边形重心.方法已在上篇讲过了. #include <iostream> #include <cstdio> #include <cstring> # ...