C# 使用NPOI生成Word文件

news/2025/10/20 13:53:20/文章来源:https://www.cnblogs.com/EndlessLife/p/19152484

NuGet 安装 NPOI

1. 建立模板(可选): 手动建立Word模板, 多使用表格然后隐藏边框, 方便数据插入固定位置

2. 建立Word对象引入模板

string dPath = $"{Environment.CurrentDirectory}\\Data\\Demo.docx";
Stream fs = new FileStream(dPath, FileMode.Open);
XWPFDocument document = new XWPFDocument(fs);

3. 段落插入

public void Main()
{string dPath = $"{Environment.CurrentDirectory}\\Data\\Demo.docx";Stream fs = new FileStream(dPath, FileMode.Open);XWPFDocument document = new XWPFDocument(fs);AddParagraph(document, 0, 2, 2, AddPlaceholder(a1));AddParagraph(document, 0, 3, 2, AddPlaceholder(a2));AddParagraph(document, 0, 4, 2, AddPlaceholder(a3));
}
/// <summary>
/// 表格内插入段落
/// </summary>
/// <param name="document">模板对象</param>
/// <param name="TabIndex">表格序号</param>
/// <param name="Row"></param>
/// <param name="Cell"></param>
/// <param name="value">插入数据</param>
/// <returns></returns>
public XWPFParagraph AddParagraph(XWPFDocument document, int TabIndex, int Row, int Cell, string value)
{XWPFParagraph paragraph = document.Tables[TabIndex].GetRow(Row).GetCell(Cell).Paragraphs[0]; //创建段落对象paragraph.Alignment = ParagraphAlignment.CENTER;//文字显示位置,段落排列(左对齐,居中,右对齐)XWPFRun xwpfRun = paragraph.CreateRun();//创建段落文本对象xwpfRun.SetText(value);//填充内容xwpfRun.FontSize = 14;//设置文字大小xwpfRun.IsItalic = false;//是否设置斜体(字体倾斜)//xwpfRun.SetColor(fontColor);//设置字体颜色--十六进制xwpfRun.SetFontFamily("宋体", FontCharRange.None); //设置标题样式如:(微软雅黑,隶书,楷体)根据自己的需求而定return paragraph;
}

4. 插入图片

table = document.Tables[4];XWPFTableCell Cell = table.GetRow(1).GetCell(0);
XWPFParagraph p = Cell.Paragraphs[0];
XWPFRun run = p.CreateRun();
using (FileStream file = File.Open($"{PDFpath}.png", FileMode.OpenOrCreate))
{run.AddPicture(file, (int)NPOI.XWPF.UserModel.PictureType.PNG, "1.png", 5100000, 3000000);
}

5. 保存文件

sting SavePath = $"{Environment.CurrentDirectory}\\TestData\\{TestProject.ProjectName}\\{ObjectName}.docx";
using (FileStream fswrite = File.Open(SavePath, FileMode.OpenOrCreate))
{document.Write(fswrite);
}document.Close();

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/941165.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025年太阳能板定制厂家口碑排行榜单:权威推荐与选择指南

摘要 随着全球能源转型加速,太阳能板行业迎来爆发式增长,2025年市场规模预计突破3000亿美元。消费者在选择太阳能板定制厂家时面临诸多困惑,本文基于技术实力、产品质量、客户口碑等维度,为您呈现最新行业排行榜单…

2025年太阳能板定制厂家口碑排行榜前十强:专业评测与选择指南

摘要 随着全球能源转型加速,太阳能板行业在2025年迎来爆发式增长,定制化需求显著提升。本文基于市场调研和用户反馈,整理出太阳能板厂家口碑排行榜单,旨在帮助用户快速找到可靠供应商。榜单结合技术参数、服务质量…

Python3 statistics 模块

Python3 statistics 模块statistics 是 Python 3.4 引入的标准库,专注于提供基本的统计计算功能,可用于分析数值数据的集中趋势、离散程度、分布形状等。它无需额外安装,接口简洁,适合快速完成简单的统计分析任务(…

linux内核开发学习计划

目录岗位需求实习--字节跳动--Linux内核开发实习生--实时核方向正式--Linux内核驱动工程师 央企直招实习--乐研--linux内核研发工程师正式--京东--OS内核核心研发正式--小米--linux内核高级工程师 岗位需求 实习--字节…

随机生成动态头像

Multiavatar 是一个多文化的头像生成器,使用 JavaScript 编写。它能够生成代表不同种族、文化、年龄组、世界观和生活方式的头像。Multiavatar 可以生成超过 120 亿个独特的头像。Multiavatar Github 地址安装 pnpm i…

2025年湖北武汉实验室装修/实验室设计/实验室改造哪个厂家好

2025年湖北武汉实验室装修厂家推荐:湖北特尔诺实验室设备有限公司 在2025年,如果您正在寻找湖北武汉地区优质的实验室装修厂家,那么​​湖北特尔诺实验室设备有限公司​​无疑是您的不二之选。这家公司凭借其专业的…

能源AI天团:多智能体如何破解行业复杂任务 - 实践

能源AI天团:多智能体如何破解行业复杂任务 - 实践2025-10-20 13:39 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; displ…

2025年AI搜索优化品牌推荐排行榜前十强深度解析

摘要 随着人工智能技术的迅猛发展,AI搜索优化行业在2025年迎来爆发式增长,企业依赖高效、精准的搜索优化服务提升在线可见性和业务转化。本文基于市场调研和数据统计,解析2025年AI搜索优化品牌排行榜前十强,为读者…

2025年AI搜索优化品牌推荐排行榜:技术深度解析与选择指南

摘要 随着人工智能技术的飞速发展,AI搜索优化行业在2025年迎来爆发式增长,旨在提升内容精准度和用户体验。本排行基于技术实力、服务口碑、案例实效等维度综合评估,为寻求加盟或服务的企业提供参考。表单数据来源于…

2025年AI搜索优化品牌排行榜前十强权威发布

摘要 随着人工智能技术快速发展,AI搜索优化行业迎来爆发式增长,预计2025年市场规模将突破千亿。本文基于技术实力、服务能力、客户口碑等多维度评估,为您呈现最新AI搜索优化品牌排行榜,并提供专业选择指南,帮助您…

直播回顾|PostgreSQL 18 六大新特性深度解析

10 月 16 日,IvorySQL 社区组织了一场线上直播,主题为:PostgreSQL 18 六大新特性深度解析。以下为本场直播的回顾。 嘉宾简介王世鑫,数据库软件工程师 张虎,数据库软件工程师 权宗亮,数据库软件工程师 兰柯,数据…

异常----Windows 已保护你的电脑:Microsoft Defender SmartScreen 阻止了无法识别的应用启动。运行此应用可能会导致你的电脑存在风险。

exe文件运行异常: Windows 已保护你的电脑 Microsoft Defender SmartScreen 阻止了无法识别的应用启动。运行此应用可能会导致你的电脑存在风险。 解决方法: 打开文件属性, 找到“常规”中的“安全”,并勾选“解除…

win10 开启大小核心调度--异类策略0~4介绍

异类策略0‌:‌特点‌:Windows 11的默认策略。睡眠顺序为优先休眠超线程、小核、大核。‌适用场景‌:适合使用12代、13代处理器的用户,无论系统类型,都可以获得最佳的能效处理。‌优势‌:通过合理调度大小核,实…

Windows 已保护你的电脑:Microsoft Defender SmartScreen 阻止了无法识别的应用启动。运行此应用可能会导致你的电脑存在风险。

exe文件运行异常: Windows 已保护你的电脑 Microsoft Defender SmartScreen 阻止了无法识别的应用启动。运行此应用可能会导致你的电脑存在风险。 解决方法: 打开文件属性, 找到“常规”中的“安全”,并勾选“解除…

深入解析:Thinkphp-Laravel467 小程序校运会高校运动会管理系统

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

恒生电子面经准备 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

082_尚硅谷_单分支双分支课堂练习(2)

082_尚硅谷_单分支双分支课堂练习(2)1.声明2个float64变量并赋值, 判断第一个数大于10.0, 且第2个数小于20.0, 打印两数之和 2.声明2个int32变量并赋值, 判断两数之和, 如果大于等于50, 打印`hello world` 3.定义两个变…

把“扔硬币”搬到互联网:一文看懂 AB 测试的底层逻辑 - 指南

把“扔硬币”搬到互联网:一文看懂 AB 测试的底层逻辑 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Cons…

实用指南:IEC 60364-7-722-2018低压电气装置中电动车供电安全要求标准介绍

实用指南:IEC 60364-7-722-2018低压电气装置中电动车供电安全要求标准介绍pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-famil…

记录下,cadence17.4 PCB封装更新方法

在PCB板上 然后在元件选择栏内看到元件置于待放入元件nets列表中 在随后出现的设置对话框中,选择update 焊盘from lib,fixed 属性,然后update,再选元件进入PCB,封装已经更新了。