我自己在学习的过程中,只用到了再word中写文字的内容,所以整理出来方便大家使用
同上一篇博客读取word一样,运行前要先导入NOPI工具包,工具包在上一个博客中放了链接,需要自取
using NPOI.XSSF.UserModel;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System.IO;
using System.Text;
using ICSharpCode.SharpZipLib;
using NPOI.XWPF.UserModel;
using NPOI.OpenXmlFormats.Wordprocessing;
public class Write : MonoBehaviour
{
//初始化程序时调用写文字的函数
private void Start()
{
ReadWord_NPOI();
}
void ReadWord_NPOI()
{
XWPFDocument doc = new XWPFDocument();
//打开一个文件
FileStream file = new FileStream("C://Users/Administrator/Desktop/English.docx", FileMode.OpenOrCreate, FileAccess.ReadWrite);
Debug.Log(file.CanWrite);//返回一个bool值,查看是否支持写入
XWPFParagraph p = doc.CreateParagraph();//创建段落
p.Alignment = ParagraphAlignment.CENTER;//设置段落对齐方式
XWPFRun r = p.CreateRun();
//调用函数
Input(r, "0000", "王胖胖", "宋体", 16, false, true);
//执行写操作
doc.Write(file);
file.Close();
//打开word文件
System.Diagnostics.Process.Start("C://Users/Administrator/Desktop/English.docx");
}
/// <summary>
/// 对文字进行操作
/// </summary>
/// <param name="aRun">段落对象</param>
/// <param name="color">颜色</param>
/// <param name="Nierong">文字内容</param>
/// <param name="zhiti">字体</param>
/// <param name="sizes">字号</param>
/// <param name="isb">是否加粗</param>
/// <param name="isXie">是否斜体</param>
public static void Input(XWPFRun aRun, string color, string Nierong, string zhiti, int sizes, bool isb, bool isXie)
{
aRun.IsBold = isb;
aRun.FontFamily = zhiti;
aRun.FontSize = sizes;
aRun.SetText(Nierong);
aRun.SetColor(color);
aRun.IsItalic = isXie;
}
}