您好,登錄后才能下訂單哦!
在上一篇文章中介紹了關于C#如何插入Word書簽、插入圖片或表格到word、刪除word書簽等內容,本篇文章將繼續介紹C#操作word書簽的方法。下面的示例中將介紹
原文檔中的書簽內容:
【C#】
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
using System;
namespace GetTextOfBookmark_Doc
{
class Program
{
static void Main(string[] args)
{
//實例化Document類,加載測試文檔
Document doc = new Document();
doc.LoadFromFile("test.docx");
//初始化BookmarkNavigator類對象
BookmarksNavigator navigator = new BookmarksNavigator(doc);
//定位到指定書簽位置,獲取書簽位置的文檔內容
navigator.MoveToBookmark("bookmark1");
TextBodyPart textBodyPart = navigator.GetBookmarkContent();
//遍歷書簽內容中的子項目,并將文本信息提取至string類型變量中
string text = null;
foreach (var item in textBodyPart.BodyItems)
{
if (item is Paragraph)
{
foreach (var childObject in (item as Paragraph).ChildObjects)
{
if (childObject is TextRange)
{
text += (childObject as TextRange).Text;
}
}
}
}
//控制臺輸出文本
Console.WriteLine(text);
Console.ReadLine();
}
}
}
讀取結果如下:
【C#】
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields;
namespace EditOrReplaceBookmark_Doc
{
class Program
{
static void Main(string[] args)
{
//創建Document類實例,加載文檔
Document document = new Document();
document.LoadFromFile("test.docx");
Section sec = document.AddSection();//添加section
sec.AddParagraph().AppendText("Welcome Back, \n My Friend!"); //添加段落到section,并添加字符串內容
//獲取段落內容
ParagraphBase firstReplacementParagraph = sec.Paragraphs[0].Items.FirstItem as ParagraphBase;
ParagraphBase lastReplacementParagraph = sec.Paragraphs[sec.Paragraphs.Count - 1].Items.LastItem as ParagraphBase;
//實例化類TextBodySelection和TextBodyPart
TextBodySelection selection = new TextBodySelection(firstReplacementParagraph, lastReplacementParagraph);
TextBodyPart part = new TextBodyPart(selection);
BookmarksNavigator bookmarkNavigator = new BookmarksNavigator(document);//實例化BookmarksNavigator類
bookmarkNavigator.MoveToBookmark("bookmark1", true, true);//定位到書簽“bookmark1”所在段落的位置
bookmarkNavigator.DeleteBookmarkContent(true);//刪除原有書簽位置的內容
bookmarkNavigator.ReplaceBookmarkContent(part, true, true);//用新添加段落的內容替換掉原書簽的內容并保留格式
//移除section
document.Sections.Remove(sec);
//保存文檔并打開
document.SaveToFile("替換書簽.docx");
System.Diagnostics.Process.Start("替換書簽.docx");
}
}
}
測試結果:
以上是本次關于C# 操作Word書簽功能的補充介紹,如需轉載,請注明出處。
(本文完)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。