c#word文档:1.创建空白Word文档及保存/2.添加页眉和页脚

2024-05-01 15:36

本文主要是介绍c#word文档:1.创建空白Word文档及保存/2.添加页眉和页脚,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

---创建空白Word文档 ---

(1)创建一个名为OfficeOperator的类库项目。引用操作Word的.NET类库

(2)定义用于操作Word的类WordOperator1。添加引用Microsoft.Office.Interop.Word命名空间。 

(3)为WordOperator声明两个操作Word文档的私有对象,在WordOperator的构造函数中创建WordApp, 定义用于创建Word文档的函数CreateWord.代码如下: 

using Microsoft.Office.Interop.Word;// 引入Microsoft.Office.Interop.Word命名空间
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace OfficeOperator1
{public class WordOperator1{//为WordOperator1声明两个操作Word文档的私有对象Application WordApp;                                   //Word应用对象Document WordDoc;                                      //Word文档对象public WordOperator1()  //在WordOperator1的构造函数中创建WordApp{WordApp = new Application();                           //创建Word应用对象WordApp.Visible = true;                                //创建完成后是否显示Word文档}//定义用于创建Word文档的函数CreateWord,代码如下:public void CreateWord(){WordDoc = WordApp.Documents.Add();                                     //创建Word文档对象WordDoc.PageSetup.Orientation = WdOrientation.wdOrientPortrait;        //横板还是竖板WordDoc.PageSetup.LeftMargin = WordApp.CentimetersToPoints(0.5f);      //左边距WordDoc.PageSetup.RightMargin = WordApp.CentimetersToPoints(0.5f);     //右边距WordDoc.PageSetup.TopMargin = WordApp.CentimetersToPoints(0.5f);       //上边距WordDoc.PageSetup.BottomMargin = WordApp.CentimetersToPoints(0.5f);    //下边距WordDoc.PageSetup.PageWidth = 400;                                     //页宽,单位:像素WordDoc.PageSetup.PageHeight = 600;                                    //页高,单位:像素}}
}

(4)创建一个名为CreateWord的控制台应用程序,为其添加对OfficeOperator1项目的引用。实例化WordOperator1对象,创建Word文档。 

启动CreateWord的控制台应用程序:创建了一个空白word文档

 -------保存Word文档-------

(1)在WordOperator类中定义用于保存Word文档的函数SaveWord

(2)在WordOperator类中定义关闭Word应用程序的函数QuitWord

using Microsoft.Office.Interop.Word;// 引入Microsoft.Office.Interop.Word命名空间
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace OfficeOperator1
{public class WordOperator1{//为WordOperator1声明两个操作Word文档的私有对象Application WordApp;                                   //Word应用对象Document WordDoc;                                      //Word文档对象public WordOperator1()  //在WordOperator1的构造函数中创建WordApp{WordApp = new Application();                           //创建Word应用对象WordApp.Visible = true;                                //创建完成后是否显示Word文档}//定义用于创建Word文档的函数CreateWord,代码如下:public void CreateWord(){WordDoc = WordApp.Documents.Add();                                     //创建Word文档对象WordDoc.PageSetup.Orientation = WdOrientation.wdOrientPortrait;        //横板还是竖板WordDoc.PageSetup.LeftMargin = WordApp.CentimetersToPoints(0.5f);      //左边距WordDoc.PageSetup.RightMargin = WordApp.CentimetersToPoints(0.5f);     //右边距WordDoc.PageSetup.TopMargin = WordApp.CentimetersToPoints(0.5f);       //上边距WordDoc.PageSetup.BottomMargin = WordApp.CentimetersToPoints(0.5f);    //下边距WordDoc.PageSetup.PageWidth = 400;                                     //页宽,单位:像素WordDoc.PageSetup.PageHeight = 600;                                    //页高,单位:像素}public void SaveWord(string fileName){object FileName = fileName;                            //文档名称object FileFormat = WdSaveFormat.wdFormatDocument;     //Word文档保存格式object LockComments = false;                           //是否锁定批注object Password = "";                                  //打开Word文档密码object WritePassword = "";                             //修改Word文档密码object AddToRecentFiles = true;                       //是否将文档添加到近期使用的文件菜单中WordDoc.SaveAs(ref FileName, ref FileFormat, ref LockComments, ref Password, ref AddToRecentFiles, ref WritePassword);        //保存Word文档}public void QuitWord(){((_Document)WordDoc).Close();                          //关闭Word文档((_Application)WordApp).Quit();                        //退出Word应用}//退出Word应用程序}}

(3)将Word文档保存到当前目录,命名为“测试文档.doc”,然后退出Word应用程序。在CreateWord项目的main函数中添加代码

using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using OfficeOperator1;namespace CreateWord1
{internal class Program{static void Main(string[] args){WordOperator1 word = new WordOperator1();word.CreateWord();         //创建Word文档word.SaveWord(Directory.GetCurrentDirectory() + "\\测试文档11.doc");//保存Word文档word.QuitWord();}}
}

本实例代码主要实现了将创建好的Word文档保存到当前目录下。首先在WordOperator中定义了用于保存Word文档的方法SaveWord,通过调用WordDoc的SaveAs方法将Word文档保存到指定的路径,该方法中的参数较多,其中第一个参数FileName为文档的路径,第二个参数FileFormat为文件的格式,第三个参数LockComments表示是否锁定批注,第四个参数Password表示打开该文档所需的密码,第五个参数AddToRecentFiles表示是否将该文档添加到近期使用的文件菜单中,第六个参数WritePassword为修改该文档所需的密码,后面的参数就不作详细的介绍了。
保存好Word文档后,通过调用WordDoc的Close方法关闭该文档,最后通过WordApp的Quit方法退出对Word文档的操作。
在CreateWord项目的main函数中调用WordOperator对象的SaveWord方法来将创建的文档保存到当前目录下,然后调用QuitWord方法退出对Word文档的操作。

启动CreateWord1的控制台应用程序:

解决方案总框架:

------添加页眉和页脚------

 【实现过程】
(1)在OfficeOperator项目的WordOperator类中定义为Word文档设置页眉的函数SetPageHeader,代码如下:

public void SetPageHeader(string Text)
     {
         WordApp.ActiveWindow.View.Type = WdViewType.wdOutlineView;     //设置视图类型
         WordApp.ActiveWindow.View.SeekView = WdSeekView.wdSeekPrimaryHeader;//选定页眉
         WordApp.ActiveWindow.ActivePane.Selection.InsertAfter(Text);//向页眉中添加文字
         WordApp.Selection.ParagraphFormat.Alignment =                          //设置居中对齐
             WdParagraphAlignment.wdAlignParagraphCenter;
         WordApp.ActiveWindow.View.SeekView = WdSeekView.wdSeekMainDocument;//选定主文档
     }

(2)在WordOperator类中定义为Word文档设置页脚的函数SetPageFooter,代码如下:
public void SetPageFooter(string Text)
     {
         WordApp.ActiveWindow.View.Type = WdViewType.wdOutlineView;     //设置视图类型
         WordApp.ActiveWindow.View.SeekView = WdSeekView.wdSeekPrimaryFooter;//选定页脚
         WordApp.ActiveWindow.ActivePane.Selection.InsertAfter(Text);   //向页脚中添加文字
         WordApp.Selection.ParagraphFormat.Alignment =                  //设置居中对齐
             WdParagraphAlignment.wdAlignParagraphCenter;
         WordApp.ActiveWindow.View.SeekView = WdSeekView.wdSeekMainDocument; //选定主文档
     }

(3)在CreateWord项目的main函数中添加代码如下:
word.SetPageHeader("C#经典实例");                                  //添加页眉
     word.SetPageFooter("第17章  访问office");                              //添加页脚

启动CreateWord1的控制台应用程序:

.......\CreateWord1\bin\Debug   路径下打开文档,已添加页眉和页脚

这篇关于c#word文档:1.创建空白Word文档及保存/2.添加页眉和页脚的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/952038

相关文章

springboot集成easypoi导出word换行处理过程

《springboot集成easypoi导出word换行处理过程》SpringBoot集成Easypoi导出Word时,换行符n失效显示为空格,解决方法包括生成段落或替换模板中n为回车,同时需确... 目录项目场景问题描述解决方案第一种:生成段落的方式第二种:替换模板的情况,换行符替换成回车总结项目场景s

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

C#使用Spire.Doc for .NET实现HTML转Word的高效方案

《C#使用Spire.Docfor.NET实现HTML转Word的高效方案》在Web开发中,HTML内容的生成与处理是高频需求,然而,当用户需要将HTML页面或动态生成的HTML字符串转换为Wor... 目录引言一、html转Word的典型场景与挑战二、用 Spire.Doc 实现 HTML 转 Word1

C#实现一键批量合并PDF文档

《C#实现一键批量合并PDF文档》这篇文章主要为大家详细介绍了如何使用C#实现一键批量合并PDF文档功能,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录前言效果展示功能实现1、添加文件2、文件分组(书签)3、定义页码范围4、自定义显示5、定义页面尺寸6、PDF批量合并7、其他方法

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

使用Python实现Word文档的自动化对比方案

《使用Python实现Word文档的自动化对比方案》我们经常需要比较两个Word文档的版本差异,无论是合同修订、论文修改还是代码文档更新,人工比对不仅效率低下,还容易遗漏关键改动,下面通过一个实际案例... 目录引言一、使用python-docx库解析文档结构二、使用difflib进行差异比对三、高级对比方

C#下Newtonsoft.Json的具体使用

《C#下Newtonsoft.Json的具体使用》Newtonsoft.Json是一个非常流行的C#JSON序列化和反序列化库,它可以方便地将C#对象转换为JSON格式,或者将JSON数据解析为C#对... 目录安装 Newtonsoft.json基本用法1. 序列化 C# 对象为 JSON2. 反序列化

C#文件复制异常:"未能找到文件"的解决方案与预防措施

《C#文件复制异常:未能找到文件的解决方案与预防措施》在C#开发中,文件操作是基础中的基础,但有时最基础的File.Copy()方法也会抛出令人困惑的异常,当targetFilePath设置为D:2... 目录一个看似简单的文件操作问题问题重现与错误分析错误代码示例错误信息根本原因分析全面解决方案1. 确保

基于C#实现PDF转图片的详细教程

《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum