Word控件Spire.Doc 【评论】教程(2):在 C#、VB.NET 中删除和替换 Word 文档中的注释

news2024/11/24 0:01:27

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转换和打印Word/PDF/Excel等格式文件处理,小巧便捷。

Spire.Doc for.NET 最新下载(qun:767755948)icon-default.png?t=M85Bhttps://www.evget.com/product/3368/download

Word 中的评论是作者对指定内容的评论。它可以被删除并替换为其他评论以显示不同的评论。Spire.Doc for .NET提供了多种方法供用户在不同情况下删除和替换注释。下面的截图是一个没有删除和替换的带有注释的文档。

消除

删除评论有三种可能性。

  • 删除一条评论:方法Document.Comments.RemoveAt使用户能够删除一个指定的评论项。索引号被传递给此方法以确认将删除哪个评论。
  • 删除所有评论:方法Document.Comments.Clear()使用户能够删除加载的 Word 文档中的所有评论。
  • Remove Part of One Comment (Body Paragraph):首先获取文档中指定的评论项。其次,获取评论正文中的段落集合。第三,使用方法ParagraphCollection.RemoveAt方法删除正文段落。索引号被传递给此方法以确认将删除哪个段落。

代替

意思是在一个指定的评论中替换正文段落的内容。所以一开始要获取评论正文中的评论项和段落项。方法Paragraph.Replace方法可用于替换注释。此方法提供了六种可能性。

  • 用替换字符串(新注释)替换正则表达式模式。
  • 用文本选择替换正则表达式模式。
  • 考虑到保留评论格式,用文本选择替换正则表达式模式。
  • 考虑到区分大小写和整个单词选项,用替换字符串替换给定的字符串(原始评论内容)。
  • 用文本选择替换给定的字符串,同时考虑区分大小写和整个单词选项。
  • 将给定字符串替换为文本选择,同时考虑区分大小写、整个单词选项和格式保留。

以下示例显示如何替换第一条评论的正文段落并删除加载文档中的整个第二条评论。下载并安装 Spire.Doc for .NET并使用以下代码。

[C#]

using Spire.Doc;

namespace RemoveandReplace
{
class Program
{
static void Main(string[] args)
{
//Load Document
Document document = new Document();
document.LoadFromFile(@"E:\work\Documents\WordDocuments\A GOOD MAN IS HARD TO FIND.docx");

//Replace Contents of The First Comment
document.Comments[0].Body.Paragraphs[0].Replace("It’s a title with Mistral font style.", "This comment is changed.", false, false);

//Remove The Second Comment
document.Comments.RemoveAt(1);

//Save and Launch
document.SaveToFile("RemoveandReplace.docx", FileFormat.Docx);
System.Diagnostics.Process.Start("RemoveandReplace.docx");
}
}
}

[VB.NET]

Imports Spire.Doc

Namespace RemoveandReplace
Friend Class Program
Shared Sub Main(ByVal args() As String)
'Load Document
Dim document As New Document()
document.LoadFromFile("E:\work\Documents\WordDocuments\A GOOD MAN IS HARD TO FIND.docx")

'Replace Contents of The First Comment
document.Comments(0).Body.Paragraphs(0).Replace("It’s a title with Mistral font style.", "This comment is changed.", False, False)

'Remove The Second Comment
document.Comments.RemoveAt(1)

'Save and Launch
document.SaveToFile("RemoveandReplace.docx", FileFormat.Docx)
System.Diagnostics.Process.Start("RemoveandReplace.docx")
End Sub
End Class
End Namespace

Spire.Doc 是一个 Microsoft Word 组件,它使用户能够直接执行范围广泛的 Word 文档处理任务,例如在 WPF、.NET 和 Silverlight 中生成、读取、写入和修改 Word 文档。

以上便是在 C#、VB.NET 中删除和替换 Word 文档中的注释,如果您有其他问题也可以继续浏览本系列文章,获取相关教程,你还可以给我留言或者加入我们的官方技术交流群。

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

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

相关文章

130页5万字某市档案馆数字档案馆建设方案

【版权声明】本资料来源网络,仅用于行业知识分享,供个人学习参考,请勿商用。【侵删致歉】如有侵权请联系小编,将在收到信息后第一时间进行删除! 完整资料领取见文末,部分资料内容: 国家档案局证…

MySQL主从搭建

MySQL主从搭建一 主从配置原理二 搭建步骤(基于两个docker容器)三 django实现读写分离3.1 配置数据库3.2 models中创建表3.3 数据库迁移3.4 指定要使用的数据库四 Pycharm远程连接服务器进行代码的运行与调试五 Pycharm远程链接docker开发5.1 操作 docke…

SSM图书管理系统(增强版,附源码)

前篇引入(新人必看):SSM图书管理系统(原版) 之前给大家分享过SSM图书管理系统项目的源码,热度较高,但我也发现功能并不是很全面,所以这次对系统进行了功能增强,以下是系…

新手入门搭建一个spring boot项目

1. 打开Idea,新建一个maven项目,详细情况见下图,(idea版本2021.1.2) 2.查看新建项目的maven包是否存在, 注意:maven包需要自己去下载,注意要下载与版本对应匹配的包 3.导入spring boot 相关的依…

springboot 连接不上 redis 的三种解决方案!

针对于springboot 连接不上 redis 这种情况,首先,我们最简单直接的方法就是需要确认Redis是否已经正常启动(验证方法:如果安装在Linux下的话可以使用ps-ef|grep redis来进行确认是否开启) 如果未开启,我们可…

STL-string的接口使用及模拟实现

文章目录string类的介绍string类的常用接口介绍 构造相关 无参构造字符串构造拷贝构造 容量相关的接口 sizereserveresizecapacityemptyclear 数据访问及遍历相关的接口 operator[]begin endrbegin rend 修改数据相关的接口 push_backoperatorinserterasec_strfind npossubs…

Redis搭建主从集群

搭建集群 建集群的第一件事情我们需要一些运行在 集群模式的Redis实例。这意味这集群并不是由一些普通的Redis实例组成的,集群模式需要通过配置启用,开启集群模式后的Redis实例便可以使用集群特有的命令和特性了。 下面是一个最少选项的集群的配置文件…

@Builder注解在子类中使用遇到的问题

场景 在项目开发中,需要基于某个类进行一些字段的拓展,那么自然而然想到的做法是extends该类。而两个类都需要使用Builder进行构造。代码如下: Data Builder AllArgsConstructor NoArgsConstructor public class EmployeeDto {private Stri…

详解 Vue3 中如何使用 Proxy 来实现响应式的技术~

详解 Vue3 中如何使用 Proxy 来实现响应式的技术~写在前面剖析 Vue2 中是如何实现响应式的Vue2 的响应式存在什么问题?Vue3 响应式一、ref 函数二、reactive 函数reactive 响应式原理 - ProxyVue3 中的响应式解决了 Vue2 中存在的问题写在前面 Vue3 中的响应式原理…

C++:STL:常见容器:stack,queue, list

一:stack容器 1.1: stack基本概念 概念:stack是一种先进后出 (First in last out FILO)的数据结构,它只有一个出口。 栈中: 1:只有栈顶的元素才可以被外界使用,因此栈不允许有遍历…

从FrameDebugger看Unity渲染

从FrameDebugger看Unity渲染(一) Unity如何渲染一个3D2D的游戏画面,今天通过FrameDebugger来看下Unity内置渲染管线的渲染策略, 后续再出一些URP渲染管线相关的文章。 对啦!这里有个游戏开发交流小组里面聚集了一帮热爱学习游戏的零基础小白&#xff0c…

MyBatis 实现复杂 Sql 查询

resultMap 结果映射 resultMap 元素是 MyBatis 中最重要最强大的元素&#xff0c;之前所写的 sql 语句&#xff0c;返回值都是简单的基本数据类型或者某一个实体类&#xff0c;比如下面这段 sql 返回的就是最简单的 User 类型。 <select id"getUserById" result…

微信HOOK 协议接口 实战开发篇 3.收发文本消息 附详细步骤

前言&#xff1a;本次文章附带详细的HOOK步骤&#xff0c;感兴趣可以尝试一番 使用了之前文章提到的字符搜索法 接收消息 1.OD打开微信&#xff0c;点击e&#xff0c;进入模块列表 2.双击wechatwin模块进入汇编代码页面 3.右键菜单&#xff0c;选择如图示选项 4.进入字符页…

【 uniapp - 黑马优购 | tabBar】如何创建和配置标签栏

个人名片&#xff1a; &#x1f43c;作者简介&#xff1a;一名大二在校生&#xff0c;讨厌编程&#x1f38b; &#x1f43b;‍❄️个人主页&#x1f947;&#xff1a;小新爱学习. &#x1f43c;个人WeChat&#xff1a;hmmwx53 &#x1f54a;️系列专栏&#xff1a;&#x1f5bc…

zabbix监控redis修正nodata问题

之前根据网上的资料尝试监控redis&#xff0c;完成后编写了文档。 https://blog.csdn.net/bigwood99/article/details/128404063 这几天观察数据&#xff0c;发现没有数据被采集。 在图标中显示no data。 检查模板中item和graphs设置&#xff0c;发现key中没有使用引号。 …

修复U盘【笔记】

修复U盘【笔记】前言参考修复U盘问题0.芯片精灵查看1.用APTool软件擦除量产信息2.用CBMTool量产U盘结果我的版本最后前言 以下内容源自网络 仅供学习交流使用 参考 总体步骤&芯片精灵下载&#xff1a;https://www.xpwin7.com/jiaocheng/25627.html 资源下载网址来源&am…

组织上线 | 资源共享,协作自如

新功能&#xff5e;&#xff01;期待已久的组织协作上线啦&#xff01; 上线后支持在组织下创建镜像&#xff0c;组织成员可查看、拉取镜像&#xff0c;快速实现镜像资源共享&#xff0c;组织高效协同。 具体怎么操作呢&#xff1f;跟我一起来看一下吧&#xff5e; 创建组织 …

Pandas计算历史均值

在用Python进行时间序列分析时&#xff0c;我们可能经常需要计算历史的一些特征。一般会使用rolling()函数&#xff0c;这里介绍一下计算包括当前行的历史特征和不包括当前行的历史特征 1. 包括当前行 这里先简单介绍一下rolling()函数 pandas.DataFrame.rolling官方文档 Dat…

数据库,计算机网络、操作系统刷题笔记19

数据库&#xff0c;计算机网络、操作系统刷题笔记19 2022找工作是学历、能力和运气的超强结合体&#xff0c;遇到寒冬&#xff0c;大厂不招人&#xff0c;可能很多算法学生都得去找开发&#xff0c;测开 测开的话&#xff0c;你就得学数据库&#xff0c;sql&#xff0c;oracle…

Vue后台项目的记录 (二)

1、品牌静态管理组件 表单 分页器 2、品牌列表展示 创建相关接口文件 获取品牌管理数据的模块 统一接口管理 在main.js中引入&#xff0c;之后在任意组件中就可以使用了 发请求&#xff0c;获取品牌列表的接口 展示数据 current-change"handlecurrentchange curren…