使用的NOPI.dll和microsoft office(注意是microsoft office),wps没有做测试.
资源链接:https://download.csdn.net/download/qq_36657524/87471877
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using NPOI.XWPF.UserModel;
using System.IO;
using System.Diagnostics;
using System;
public class Test : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
Writ2Word();
}
private void Writ2Word()
{
XWPFDocument doc = new XWPFDocument();
FileStream file = new FileStream("D://liuyu.docx", FileMode.OpenOrCreate, FileAccess.ReadWrite);
UnityEngine.Debug.Log(file.CanWrite);//查看是否支持写入
//创建段落,设置段落对齐方式
XWPFParagraph p2 = doc.CreateParagraph();
p2.Alignment = ParagraphAlignment.LEFT;
//插入一行
XWPFRun r2 = p2.CreateRun();
SetFont(r2, "000000", "shiyanbaogao红红火火\r\n恍恍惚惚", "宋体", 16, false, true);
doc.Write(file);
file.Close();
//System.Diagnostics.Process.Start("D://liuyu.docx");
print("done");
}
private void SetFont(XWPFRun aRun, string color, string neirong, string ziti, int size, bool isb, bool isxie)
{
aRun.IsBold = isb;
aRun.FontFamily = ziti;
aRun.FontSize = size;
aRun.SetText(neirong);
aRun.SetColor(color);
aRun.IsItalic = isxie;
}
//这里是调用打印机的代码
private void PrintWord()
{
try
{
var info = new ProcessStartInfo("D://liuyu.docx")
{
CreateNoWindow = true,
Verb = "Print",
WindowStyle = ProcessWindowStyle.Hidden
};
Process.Start(info);
}
catch (Exception ex)
{
print(ex.Message + ex.StackTrace);
}
}
}