当前位置:  编程技术>.net/c#/asp.net

c#操作word分栏并格式化的实现代码

    来源: 互联网  发布时间:2014-08-30

    本文导语:  1. 概述 C#基于com组件将数据导入到word中分栏并格式化。 2. 准备步骤 A. 在项目中添加引用Microsoft Word 11.0 Object Library B. 引入命名空间   代码示例: using Microsoft.Office.Core; using MSWord = Word; 3.思路 A. 首先创建word应用程序(MSWord.App...

1. 概述
C#基于com组件将数据导入到word中分栏并格式化。

2. 准备步骤
A. 在项目中添加引用Microsoft Word 11.0 Object Library
B. 引入命名空间
 

代码示例:
using Microsoft.Office.Core;
using MSWord = Word;

3.思路
A. 首先创建word应用程序(MSWord.Application)和word文档对象(MSWord.Document)
 

代码示例:
MSWord.Application wordApp;           //Word应用程序变量
MSWord.Document wordDoc;              //Word文档变量

B. 初始化并向word应用程序添加一个word文档。
 

代码示例:
wordApp = new MSWord.ApplicationClass(); //初始化
//由于使用的是COM库,因此有许多变量需要用Missing.Value代替
Object Nothing = Missing.Value;
wordDoc = wordApp.Documents.Add(ref Nothing, ref Nothing, ref Nothing, ref Nothing);

C. 设置分栏:分栏有整篇文档的分栏和选中部分的分栏
整篇文档的分栏:
直接设置
wordDoc.PageSetup.TextColumns.SetCount(count);count为1-45的整数。

选中部分的分栏:
设置选中的区域Range,wordDoc.Range(ref start, ref end).Select(),start开始位置和end结束位置必须为oject,之后分栏wordDoc.Sections.PageSetup.TextColumns.SetCount(2), Sections表示刚选中的部分。

再加上object nt = WdBreakType.wdSectionBreakContinuous;
wordApp.ActiveDocument.Range(refend, ref end).InsertBreak(ref nt);具体意思不太清楚,但是如果不加就不能产生选中部分的分栏。

D.设置字体的样式,段落的缩进:
首先要选中设置字体的区域,之后设置选中区域字体Font。
段落缩进IndentCharWidth(charcount),charcount表示缩进的字符,
段落的悬挂缩进TabHangingIndent(charcount).

E.设置表格的样式:
 

代码示例:
//定义一个Word中的表格对象
MSWord.Table table = wordDoc.Tables.Add(wordApp.Selection.Range, rows, columns, ref Nothing, ref Nothing);

合并单元格:
 

代码示例:
table.Cell(1, 1).Merge(table.Cell(2, 1));//表示从第几行的第几列到第几行的第几列合并。

设置重复标题行:
 

代码示例:
table.Rows[1].HeadingFormat = (int)WdConstants.wdToggle;

F.设置文档格式并保存:
 

代码示例:

//WdSaveFormat为Word 2003文档的保持格式wdFormatDocument;
object format = MSWord.WdSaveFormat.wdFormatDocument;

//将wordDoc文档对象的内容保存为DOCX文档
wordDoc.SaveAs(ref path, ref format, 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);

//关闭wordDoc文档对象
wordDoc.Close(ref Nothing, ref Nothing, ref Nothing);

//关闭wordApp组件对象
wordApp.Quit(ref Nothing, ref Nothing, ref Nothing);


    
 
 

您可能感兴趣的文章:

  • c#对象中两种copy操作:深拷贝(Deep Copy)与浅拷贝(Shallow Copy)
  • c#的时间日期操作示例分享(c#获取当前日期)
  • .NET下 c#通过COM组件操作并导出Excel实例代码
  • C#操作txt文件,进行清空添加操作的小例子
  • C#实现装箱与拆箱操作简单实例
  • 浅谈C#互操作的内存溢出问题
  • C# 中的??操作符浅谈
  • c#剪切板操作的简单实例
  • c# 调用Surfer软件,添加引用的具体操作方法
  • c#异步task示例分享(异步操作)
  • c#下注册表操作的一个小细节
  • C#操作CLOB大对象的代码一例
  • c#判断操作系统位数实例代码
  • 一些关于c#与Sql的时间的操作
  • c#判断操作系统位数的示例分享
  • C#中的位操作小结
  • C# 操作符之三元操作符浅析
  • C# Dictionary操作范例(入门新手参考)
  • C#的WebBrowser操作frame实例解析
  • C# Winform 操作 INI 配置文件的实现代码
  • C#程序最小化到托盘图标操作步骤与实现代码
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • python字符串格式化输出及相关操作代码举例
  • 怎样在装有红帽操作系统的机子进行格式化,重新装Windows操作系统?
  • 如何判断linux操作系统的某个分区是否格式化
  • 如何在安装了xteamlinux的盘上重新格式化并安装windows操作系统?
  • Python 时间操作例子和时间格式化参数小结
  • C++ Stacks(堆栈) 成员 操作:比较和分配堆栈
  • 谁有操作系统PV操作的例子???谁有操作系统PV操作的例子???谢谢!!
  • C++ Strings(字符串) 成员 Operators:操作符,用于字符串比较和赋值
  • 已安装了Windows操作系统,还想安装Linux。却还想在开机选择操作系统时由Windows引导,请问如何操作。在线等待
  • C++ I/O 成员 flags():操作flags
  • 请问LINUX操作系统是怎样对外围设备进行操作的
  • C++ I/O 成员 width():操作域宽度
  • 什么样的操作最耗费服务器的IO操作?
  • Xcode介绍及创建工程和工程依赖操作步骤
  • 无操作系统下对U盘的操作
  • MyEclipse如何查看和设置文件编码格式相关操作
  • 请问命令行操作下怎么改Linux操作系统的日期和时间?
  • Html checkbox标签如何设置默认选中以及用js操作checkbox代码示例
  • 正在学操作系统原理,做操作系统方面的实验用那种工具较好?
  • c/c++ 操作符优先级参考
  • 请问16位操作系统和32位操作系统的区别?
  • javascript操作html复选框checkbox:如何判断复选框是否被选中
  • 基于linux操作系统之上操作LCD问题,急???
  • Plesk 中操作和设置 Docker 容器
  • 哪位大侠知道Linux里的有名管道传送数据快不快?有名管道操作的过程是否有读写硬盘的操作?
  • java操作excel2007文档介绍及代码例子
  • 如何在一个用户对application操作时防止别的用户对它操作?(好难啊)


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3