使用.NET Core NOPI 导出Word文档并添加图片
- 安装 NOPI 库
首先需要在项目中安装 NOPI 库,可以通过 NuGet 包管理器安装,也可以手动下载并添加到项目中。
- 创建 Word 文档
使用 NOPI 库可以创建一个空的 Word 文档,代码如下:
using NPOI.XWPF.UserModel;
// 创建一个新的文档
XWPFDocument doc = new XWPFDocument();
- 添加文本
可以使用 XWPFParagraph 和 XWPFRun 类来添加文本,代码如下:
// 创建一个段落
XWPFParagraph para = doc.CreateParagraph();
// 添加文本
XWPFRun run = para.CreateRun();
run.SetText('This is some text.');
- 添加图片
可以使用 XWPFRun 类的 AddPicture 方法来添加图片,需要提供图片的文件路径和图片类型,代码如下:
// 添加图片
XWPFRun run = para.CreateRun();
string imagePath = 'C:\images\image.png';
FileStream stream = new FileStream(imagePath, FileMode.Open, FileAccess.Read);
int imageType = (int)PictureType.PNG;
run.AddPicture(stream, imageType, 'image.png', Units.ToEMU(300), Units.ToEMU(200));
其中,Units.ToEMU 方法是将像素转换为 EMUs(English Metric Units),这是 Word 文档中图片大小的单位。
完整代码如下:
using NPOI.XWPF.UserModel;
using NPOI.SS.Util;
using System.IO;
// 创建一个新的文档
XWPFDocument doc = new XWPFDocument();
// 创建一个段落
XWPFParagraph para = doc.CreateParagraph();
// 添加文本
XWPFRun run = para.CreateRun();
run.SetText('This is some text.');
// 添加图片
run = para.CreateRun();
string imagePath = 'C:\images\image.png';
FileStream stream = new FileStream(imagePath, FileMode.Open, FileAccess.Read);
int imageType = (int)PictureType.PNG;
run.AddPicture(stream, imageType, 'image.png', Units.ToEMU(300), Units.ToEMU(200));
// 保存文档
string filePath = 'C:\documents\document.docx';
FileStream outStream = new FileStream(filePath, FileMode.Create, FileAccess.Write);
doc.Write(outStream);
outStream.Close();
原文地址: https://www.cveoy.top/t/topic/mlgF 著作权归作者所有。请勿转载和采集!