C# 如何在Word文档中添加替换和删除书签
C# 如何在Word文档中添加替换和删除书签
书签在Word文档中尤其是在篇幅比较长的word文档中的应用非常广泛。当我们对一段文本添加书签后,这段文本将会被方括号包围。下一次我们可以直接通过查找书签来回到我们上一次的位置而不需要通过滚动条在整个文档中逐一查找,可以说书签的应用帮我们节省了很多时间。那么如何通过编程的方式来操作Word文档中的书签呢?
本文将介绍如何使用一个.NET Word组件-Spire.Doc在Word文档中添加,替换和删除书签。
Spire.Doc组件概述
Spire.Doc for .NET 是一款专门对 Word 文档进行操作的 .NET类库。这款控件的主要功能在于帮助开发人员轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。它是一款独立的控件,运行(服务器端或客户端)无需安装 Microsoft Word。支持 多种格式如Word97-2003,Word2007,Word2010 以及 Word2013等。能在Word和XML、RTF、TXT、XPS、EPUB、EMF、HTML 等格式文件之间进行双向转换,还能将 Word 文件高质量地转换为 PDF 和 SVG 文件格式。
添加书签
该组件提供了一个类叫做Paragraph,在该类中有两个方法AppendBookmarkStart (string name) and AppendBookmarkEnd (string name)可以帮助我们添加书签到指定的段落。BookmarkStart代表的是书签的起始位置,BookmarkEnd代表的是书签的结束位置。
//加载文档 Document document = new Document(); document.LoadFromFile(@"向日葵.docx"); //添加书签 “bookmark” Section section = document.Sections[0]; section.Paragraphs[5].AppendBookmarkStart("bookmark"); section.Paragraphs[6].AppendBookmarkEnd("bookmark"); //保存文档 document.SaveToFile("添加书签.docx", FileFormat.Docx);
替换书签
BookmarkNavigator是用于导航到指定的书签的,通过它我们可以获取,替换和删除指定书签的内容。使用该组件,我们还可以在替换书签时保留原书签的格式,仅需要将ReplaceBookmarkContent (TextBodyPart bodyPart, bool isKeepSourceFirstParaFormat, bool saveFormatting) 方法中的saveFormatting 参数设置为true。
//加载文档 Document document = new Document(); document.LoadFromFile(@"添加书签.docx"); //添加一个section到文档 Section sec = document.AddSection(); //添加两个段落到section sec.AddParagraph().AppendText("Welcome Back, "); sec.AddParagraph().AppendText("Friend! "); //获取段落内容 ParagraphBase firstReplacementParagraph = sec.Paragraphs[0].Items.FirstItem as ParagraphBase; ParagraphBase lastReplacementParagraph = sec.Paragraphs[sec.Paragraphs.Count - 1].Items.LastItem as ParagraphBase; TextBodySelection selection = new TextBodySelection(firstReplacementParagraph, lastReplacementParagraph); TextBodyPart part = new TextBodyPart(selection); //移动到书签 “bookmark”, 删除它的内容并保留格式 BookmarksNavigator bookmarkNavigator = new BookmarksNavigator(document); bookmarkNavigator.MoveToBookmark("bookmark", true, true); bookmarkNavigator.DeleteBookmarkContent(true); //用新添加段落的内容替换掉原书签的内容并保留格式 bookmarkNavigator.ReplaceBookmarkContent(part, true, true); //移除section并保存文档 document.Sections.Remove(sec); document.SaveToFile("替换书签.docx");
删除书签
在该组件中,每一个Word文档都含有一个书签的集合,我们可以通过Document类的Bookmarks属性来访问该集合,并可以通过该属性来查找指定的书签并将其删除。
//加载文档 Document document = new Document(); document.LoadFromFile(@"添加书签.docx"); Bookmark bookmark = document.Bookmarks.FindByName("bookmark"); //移除书签 “bookmark” document.Bookmarks.Remove(bookmark); //保存文档 document.SaveToFile("删除书签.docx", FileFormat.Docx);
- C# 如何在Word文档中添加,替换和删除书签
- C#/VB.NET 给Word文档添加/撤销书签
- 如何利用书签向word文档读取或写入数据[C#](
- C#/VB.NET 给Word文档添加/撤销书签
- 如何使用C#向Word文档中添加表格和嵌套表格
- (转)如何利用书签向word文档读取或写入数据[C#]
- C# 如何给Word文档添加超链接及设置超链接的样式
- C#如何给word文档添加水印
- C# 如何处理Word文档分页——插入、删除、阻止分页
- C# office控件开发 如何使word中书签不被删除,且一直保持[]输入状态,非|状态
- C# 如何添加表格到Word文档
- C# 如何在PDF文档中添加一维条形码和二维条形码
- C# 操作Word书签,插入、删除书签
- win7系统Word文档添加和删除水印的方法
- C# 替换Word文本—— 用文档、图片、表格替换文本
- OCR/Vote disk 维护操作: (添加/删除/替换/移动) (文档 ID 1674859.1)
- word文档中如何删除空白页
- C# 如何给Word文档设置背景颜色和背景图片
- C# 如何向Excel添加、删除表单控件
- 如何在word文档中添加附件