当前位置: 首页 > news >正文

学习C#调用OpenXml操作word文档的基本用法(1:读取样式定义)

  OpenXml中的StyleDefinitionsPart类用于存储Word文档中的样式定义,该类的实例对象保存在MainDocumentPart类的StyleDefinitionsPart属性中,StyleDefinitionsPart类的Styles属性保存所有的样式定义,其类型为Styles,该类型中保存Style类集合,每个Style类实例对象代表具体的样式定义,包含样式的ID、名称、类型等核心属性。
样式类型主要包括以下几种,不同的样式类型用于定义不同数据对象的样式:
1)Paragraph:段落样式,用于控制整个段落的外观;
2)Character:字符样式,用于控制部分文本的格式;
3)Table:表格样式,用于定义表格的整体外观;
4)Numbering:编号样式,管理列表编号的格式。

  使用测试文档验证样式定义数据读取方式,主要程序及运行效果如下所示:

using (WordprocessingDocument document = WordprocessingDocument.Open(txtFilePath.Text, false))
{// 获取文档主体部分Body body = document.MainDocumentPart.Document.Body;// 获取文档的样式定义部分StyleDefinitionsPart stylePart = document.MainDocumentPart.StyleDefinitionsPart;if (stylePart?.Styles != null){// 遍历所有样式foreach (Style style in stylePart.Styles.Elements<Style>()){ListViewItem item = new ListViewItem(Convert.ToString(lstStyles.Items.Count + 1));item.SubItems.Add(style.StyleId);item.SubItems.Add(style.StyleName?.Val?.Value);item.SubItems.Add(Convert.ToString(style.Type.ToString()));lstStyles.Items.Add(item);}} 
}

在这里插入图片描述

参考文献
[1]https://github.com/dotnet/Open-XML-SDK
[2]https://learn.microsoft.com/zh-cn/office/open-xml/open-xml-sdk

http://www.dtcms.com/a/531827.html

相关文章:

  • Java-Spring入门指南(二十八)Android界面设计基础
  • Go 语言类型转换
  • 【Windows】goland-2024版安装包
  • 快速入门elasticsearch
  • Linux 多用户服务器限制单用户最大内存使用(systemd user.slice)
  • 食品公司网站设计项目雨蝶直播免费直播
  • SQL 调试不再靠猜:Gudu SQL Omni 让血缘分析一键可视化
  • RV1126 NO.34:OPENCV的交叉编译和项目Makefile讲解
  • FreeRTOS---进阶知识4---通用链表
  • jvm逃逸问题的分析以及给出解决方案?
  • PHP 表单:深入浅出地掌握表单处理
  • Linux(Ubuntu)操作系统下文件的解压
  • HTTP 1.0版本的webserver自主实现
  • 【开题答辩全过程】以 基于微信小程序的个性化饮品定制点餐系统设计与实现为例,包含答辩的问题和答案
  • kotlin - 显示heic图片
  • 做网站域名是什么意思网站不备案会怎样
  • A2A+MCP构建智能体协作生态:下一代分布式人工智能架构解析
  • SpringBoot 的三类配置文件
  • 创造模式物品栏——多物品栏
  • Docker中部署多个ASP.NET Core实例
  • HarmonyOS生物识别认证深度解析:从指纹到人脸的安全实践
  • GitHub等平台形成的开源文化正在重塑加热d
  • C++新特性概览
  • dify 配置 deepseek Credentials validation failed with status code 402
  • 【自然语言处理】Transformer模型
  • 使用 RapidXML 实现 C++ 中的 XML 文件读取与生成,特别适合需要快速处理 XML 的场景
  • 基于Reactor模式的高性能C++仿Muduo库:Server服务器模块实现
  • 常州市网站建设设计公众号开发和小程序开发哪个简单
  • 【Android】DrawerLayout实现侧边导航栏
  • 缓存查询逻辑及问题解决