Microsoft Word使您能够向Word文档添加注释。在诸如建议改进文档或共享文本思想等情况下,注释可能会有所帮助。在某些情况下,需要以编程方式管理评论。为此,本文将教您如何使用C ++在Word文档中使用注释。

让我们探索以下有关的内容:

  • 使用C ++向Word文档添加注释
  • 阅读Word文档中的注释
  • 使用C ++修改Word文档中的注释
  • 使用C ++从Word文档中删除注释

Aspose.Words for C ++ 是本机C ++库,允许您创建,读取,修改和转换Microsoft Word文档。此外,它还支持处理DOCX和DOC文件中的注释。

>>你可以下载Aspose.Words for C ++ 最新版测试体验。


使用C ++向Word文档添加注释

Aspose.Words for C ++ API提供了添加带有作者姓名,缩写和日期/时间的注释的功能。以下是将注释添加到Word文档的步骤。

  • 首先,使用Document类加载Word文档。
  • 通过传递在上一步中创建的Document对象,创建DocumentBuilder类的实例。
  • 使用Comment类创建注释。
  • 使用DocumentBuilder-> get_CurrentParagraph()-> AppendChild(System :: SharedPtrnewChild)方法将注释添加到文档中。
  • 最后,使用Document-> Save(System :: String fileName)方法保存文档。

下面的示例代码演示了如何使用C ++向Word文档添加注释。

// Directory paths.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";// Load the Word file
System::SharedPtr<Document> doc = System::MakeObject<Document>(sourceDataDir + u"Sample 1.docx");// Create an instance of the DocumentBuilder class
System::SharedPtr<DocumentBuilder> builder = System::MakeObject<DocumentBuilder>(doc);// Add comment
System::SharedPtr<Comment> comment = System::MakeObject<Comment>(doc, u"Aspose", u"AFFA", System::DateTime::get_Today());
builder->get_CurrentParagraph()->AppendChild(comment);
comment->get_Paragraphs()->Add(System::MakeObject<Paragraph>(doc));
comment->get_FirstParagraph()->get_Runs()->Add(System::MakeObject<Run>(doc, u"Comment text."));// Save the document.
doc->Save(outputDataDir + u"AddCommentsToExistingDoc.docx");

下面是示例代码生成的输出图像。

阅读Word文档中的注释

以下是从Word文档中读取注释的步骤。

  • 使用Document类加载Word文档。
  • 使用Document-> GetChildNodes(Aspose :: Words :: NodeType nodeType,bool isDeep)方法检索注释。
  • 遍历注释并检索单个注释的信息。

以下是使用C ++从Word文档中读取注释的示例代码。

// Directory paths.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";// Load the Word file
System::SharedPtrdoc = System::MakeObject(sourceDataDir + u"SampleComments.docx");// Retrieve comments
System::SharedPtrcomments = doc->GetChildNodes(NodeType::Comment, true);// Loop through all comments
for (System::SharedPtrcomment : System::IterateOver(comments))
{// Print comment informationstd::cout << comment->get_Author() + u" " + comment->get_DateTime() + u" " + System::StaticCast(comment)->ToString(SaveFormat::Text);
}

使用C ++修改Word文档中的注释

为了修改注释,请使用NodeCollection-> idx_get(int32_t index)方法对其进行检索,然后根据需要进行更改。以下是修改Word文档中的注释的步骤。

  • 首先,使用Document类加载Word文档。
  • 使用Document-> GetChildNodes(Aspose :: Words :: NodeType nodeType,bool isDeep)方法检索注释。
  • 使用NodeCollection-> idx_get(int32_t index)方法获取所需的注释,并将结果转换为Comment。
  • 更新评论。
  • 最后,使用Document-> Save(System :: String fileName)方法保存文档。

下面的示例代码显示了如何使用C ++修改Word文档中的注释。

// Directory paths.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";// Load the Word file
System::SharedPtrdoc = System::MakeObject(sourceDataDir + u"SampleComments.docx");// Retrieve comments
System::SharedPtrcomments = doc->GetChildNodes(NodeType::Comment, true);// Get comment
System::SharedPtrcomment = System::DynamicCast(comments->idx_get(0));// Update comment text
comment->SetText(u"Updated Text");// Save the document.
doc->Save(outputDataDir + u"UpdatedComment.docx");

使用C ++从Word文档中删除注释

可以使用NodeCollection-> Clear()方法一次删除所有注释,而不是删除单个注释。以下是删除Word文档中所有注释的步骤。

  • 使用Document类加载Word文档。
  • 使用Document-> GetChildNodes(Aspose :: Words :: NodeType nodeType,bool isDeep)方法检索注释。
  • 使用NodeCollection-> Clear()方法删除所有注释。
  • 最后,使用Document-> Save(System :: String fileName)方法保存文档。

下面的示例代码演示了如何使用C ++从Word文档中删除所有注释。

// Directory paths.
System::String sourceDataDir = u"SourceDirectory\\";
System::String outputDataDir = u"OutputDirectory\\";// Load the Word file
System::SharedPtrdoc = System::MakeObject(sourceDataDir + u"SampleComments.docx");// Retrieve comments
System::SharedPtrcomments = doc->GetChildNodes(NodeType::Comment, true);// Remove all comments.
comments->Clear();// Save the document.
doc->Save(outputDataDir + u"DeleteAllComments.docx");

以下是删除特定注释的步骤。

  • 使用Document类加载Word文档。
  • 使用Document-> GetChildNodes(Aspose :: Words :: NodeType nodeType,bool isDeep)方法检索注释。
  • 使用NodeCollection-> idx_get(int32_t index)方法获取要删除的注释,并将结果转换为Comment。
  • 使用Comment-> Remove()方法删除注释。
  • 使用Document-> Save(System :: String fileName)方法保存文档。

下面的示例代码显示了如何使用C ++从Word文档中删除特定的注释。

// Directory paths.
System::String sourceDataDir = u"D:\\Work\\Aspose\\01_SourceDirectory\\";
System::String outputDataDir = u"D:\\Work\\Aspose\\02_OutputDirectory\\";// Load the Word file
System::SharedPtrdoc = System::MakeObject(sourceDataDir + u"SampleComments.docx");// Retrieve comments
System::SharedPtrcomments = doc->GetChildNodes(NodeType::Comment, true);// Get comment
System::SharedPtrcomment = System::DynamicCast(comments->idx_get(2));// Remove comment
comment->Remove();// Save the document.
doc->Save(outputDataDir + u"DeleteSpecificComments.docx");

如果您有任何疑问或需求,请随时加入Aspose技术交流群(761297826),我们很高兴为您提供查询和咨询。

如何使用C ++以编程方式在Word文档中使用注释?相关推荐

  1. Word开发工具Aspose.Words功能演示:在C ++中以编程方式在Word文档中添加或删除页眉和页脚

    Word文档中的页眉和页脚用于格式化和显示重要信息,例如主题,章节,页码,Copywrite等.以编程方式使用Word文档时,可能需要添加或删除页眉和页脚.为此,本文将教您如何使用C ++在Word文 ...

  2. Word处理控件Aspose.Words功能演示:用Java从Word文档中提取文本

    Aspose.Words For .NET是一种高级Word文档处理API,用于执行各种文档管理和操作任务.API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsof ...

  3. C# Word文档中插入、提取图片,文字替换图片

    Download Files: http://www.c-sharpcorner.com/UploadFile/26b237/image-operations-using-word-document- ...

  4. Word处理控件Aspose.Words功能演示:从 C# 中的 Word 文档中提取图像

    图像在说明 Word 文档中的关键信息方面发挥着重要作用.此外,它们使文档更具吸引力并改善其呈现方式.作为一名程序员,您可能会得到一份工作来提取嵌入在 Word DOCX 或 DOC 文档中的图像.为 ...

  5. Word开发工具Aspose.Words功能演示:使用C ++在Word文档中使用目录

    目录(TOC)是Word文档的重要组成部分.它提供了文档内容的概述,并允许您快速导航到所需的部分.您可能会遇到需要以编程方式从Word文档中添加,提取,更新或删除目录的情况.为此,本文将教您如何使用C ...

  6. Word处理控件Aspose.Words功能演示:在 C# 中从 Word 文档中提取文本

    从 Word 文档中提取文本通常在不同的场景中执行.例如,分析文本,提取文档的特定部分并将它们组合成单个文档,等等.在本文中,您将学习如何使用 C# 以编程方式从 Word 文档中提取文本.此外,我们 ...

  7. python环绕文字_Java 设置 Word 文档中图片文字环绕方式

    Java 设置 Word 文档中图片文字环绕方式 在Word文档中插入图片时,选择合理的图片文字环绕方式可以使图片的展示效果更好,也能使页面的排版更加美观.本文就将介绍如何使用Free Spire.D ...

  8. Word处理控件Aspose.Words功能演示:使用 C# 在 Word 文档中创建和修改 VBA 宏

    Aspose.Words 是一种高级Word文档处理API,用于执行各种文档管理和操作任务.API支持生成,修改,转换,呈现和打印文档,而无需在跨平台应用程序中直接使用Microsoft Word.此 ...

  9. WORD文档中的表格:自定义方式的批处理,增删行列和内容

    WORD文档中的表格:自定义方式的批处理,增删行列和内容: 大家有没有遇到需要处理WORD文档中的表格,表格多,需要大量的重复性工作: office提供了宏录制方式,可以编辑风格,内容,但是针对增删表 ...

最新文章

  1. 第一章 Mysql 简介及安装和配置
  2. 阿里三面被挂,幸获内推,历经5轮终于拿到口碑offer
  3. R语言ggplot2可视化分面图(facet_wrap)、使用size参数自定义设置分面图标签栏(灰色标签栏)中的标签文本的字体大小
  4. SQLSERVER中修复状态为Suspect的数据库
  5. 报错:SyntaxError: Non-UTF-8 code starting with '\xbc' in file
  6. ASP读取ini文件的实现方法
  7. 解决redis-cli连接时出现Could not connect to Redis at 127.0.0.1:6379: Connection refused
  8. 跨域调用WebService
  9. android学习一---搭建开发环境
  10. 大学一年级计算机教程视频教程,大学一年级公开课《计算机基础教程》期末试题复习.doc...
  11. python struct pack string_struct (String) – Python 中文开发手册
  12. windows2003密码忘记了该如何处理
  13. 图片保存为YUV格式
  14. 家用linux 版本哪个好,Ubuntu到底哪个版本最好用?
  15. 朋友圈点赞图在线生成源码
  16. uni-app中view和text组件和动画的使用
  17. java excelhandle oschina,基于alibab的easyexcel进行excel表的导出(可自定义handler去设计excel格式)...
  18. 聚焦:ZK-SNARK 技术
  19. No pyvenv.cfg file
  20. 记一次:9i数据库,/home目录满,tossing监控出问题,导致脑裂

热门文章

  1. 计算机职称考试图片,2017职称计算机考试WPS技巧:图片合并
  2. 失业日记 11月22日
  3. 基础教学丨UiBot主界面、可视化、源代码视图操作
  4. 5G无线路由器在智慧水利监测中的应用
  5. 计算机毕业论文乐谱播放器,基于乐谱输入的弦乐播放系统 的设计与实现毕业论文.doc...
  6. 福袋试用2.0(野火霸天虎stm32f407、正点原子miniSTM32F103...)
  7. Mysql中空间扩展 - 查询你附近的餐厅或酒店
  8. 我的HTML基础总结-2
  9. 【genius_platform软件平台开发】第八十八讲:arm公司的V架构和内核发展史(整理)
  10. 新媒体运营部门的工作内容及人员分工