通过NPOI实现以下功能
首先通过Word新建个样式模板,该样式模板包括你想要的几个标题样式,比如我这里就需要三个样式,标题、标题1、标题2
打开Word,新建文档,然后输入内容,更改样式,另存为word模板(*.dotx)
完成后就可以写代码了
using (var dotStream = new FileStream("template.dotx", FileMode.Open, FileAccess.Read)){XWPFDocument template = new XWPFDocument(dotStream);using (var fileStream = new FileStream("test.docx", FileMode.Create, FileAccess.Write)){XWPFDocument document = new XWPFDocument();XWPFStyles newStyles = document.CreateStyles();newStyles.SetStyles(template.GetCTStyle());XWPFParagraph paragraph = document.CreateParagraph();paragraph.Style = "a3";XWPFRun xwpfRun = paragraph.CreateRun();xwpfRun.SetText("标题内容");XWPFParagraph paragraph1 = document.CreateParagraph();paragraph1.Style = "1";XWPFRun xwpfRun1 = paragraph1.CreateRun();xwpfRun1.SetText("标题1内容");XWPFParagraph paragraph2 = document.CreateParagraph();paragraph2.Style = "2";XWPFRun xwpfRun2 = paragraph2.CreateRun();xwpfRun2.SetText("标题2内容");document.Write(fileStream);document.Close();}template.Close();}
paragraph.Style里这个值,可以通过断点template值找出来
StyleId就是我们要设置的值了,根据Name值区别出我们想要的数据,这里heading 1肯定就是标题1没错了。