翼度科技»论坛 编程开发 .net 查看内容

如何通过C#/VB.NET代码在Word中插入或删除脚注

5

主题

5

帖子

15

积分

新手上路

Rank: 1

积分
15
脚注,是可以附在文章页面的最底端的,对某些东西加以说明,印在书页下端的注文。脚注和尾注是对文本的补充说明。脚注一般位于页面的底部,可以作为文档某处内容的注释。常用在一些说明书、标书、论文等正式文书用来引注的内容。这篇文章将为您展示如何通过C#/VB.NET代码,以编程方式在Word中插入或删除脚注。以下是我整理的具体步骤及方法,并附上C#/VB.NET代码供大家参考。

  • 在Word中的特定段落后插入脚注
  • 在Word中的特定文本后插入脚注
  • 删除Word文档中的脚注
程序环境

本次测试时,在程序中引入Free Spire.Doc for .NET。可通过以下方法引用 Free Spire.Doc.dll文件:
方法1:将 Free Spire.Doc for .NET下载到本地,解压,安装。安装完成后,找到安装路径下BIN文件夹中的 Spire.Doc.dll。然后在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径BIN文件夹下的dll文件添加引用至程序。
方法2:通过NuGet安装。可通过以下2种方法安装:
(1)可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索“Free Spire.Doc”,点击“安装”。等待程序安装完成。
(2)将以下内容复制到PM控制台安装。
Install-Package FreeSpire.Doc -Version 10.8.0
在Word中的特定段落后插入脚注

以下是在指定段落后插入脚注的详细步骤。

  • 创建Document实例
  • 使用Document.LoadFromFile() 方法加载示例Word文档。
  • 获取第一节,然后获取该节中的指定段落。
  • 使用Paragraph.AppendFootnote(FootnoteType.Footnote) 方法在段落末尾添加脚注。
  • 设置脚注的文本内容、字体和颜色,然后设置脚注上标数字的格式。
  • 使用Document.SaveToFile() 方法保存结果文档。
完整代码

C#
  1. using Spire.Doc;
  2. using Spire.Doc.Documents;
  3. using Spire.Doc.Fields;
  4. using System.Drawing;
  5. namespace AddFootnote
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             //创建Document实例
  12.             Document document = new Document();
  13.             //加载Word文档示例
  14.             document.LoadFromFile("我与地坛.docx");
  15.             //获取第一节
  16.             Section section = document.Sections[0];
  17.             //获取节中的指定段落
  18.             Paragraph paragraph = section.Paragraphs[1];
  19.             //在段落末尾添加脚注
  20.             Footnote footnote = paragraph.AppendFootnote(FootnoteType.Footnote);
  21.             //设置脚注的文本内容
  22.             TextRange text = footnote.TextBody.AddParagraph().AppendText("即使世界毁灭,那又怎样,天地崩塌,于我何干,我在乎的只有他。");
  23.             //设置文本字体和颜色
  24.             text.CharacterFormat.FontName = "宋体";
  25.             text.CharacterFormat.FontSize = 12;
  26.             text.CharacterFormat.TextColor = Color.DarkBlue;
  27.             //设置脚注上标数字的格式
  28.             footnote.MarkerCharacterFormat.FontName = "Calibri";
  29.             footnote.MarkerCharacterFormat.FontSize = 15;
  30.             footnote.MarkerCharacterFormat.Bold = true;
  31.             footnote.MarkerCharacterFormat.TextColor = Color.DarkCyan;
  32.             //保存结果文档
  33.             document.SaveToFile("添加脚注.docx", FileFormat.Docx);
  34.         }
  35.     }
  36. }
复制代码
VB.NET
  1. Imports Spire.Doc
  2. Imports Spire.Doc.Documents
  3. Imports Spire.Doc.Fields
  4. Imports System.Drawing
  5. Namespace AddFootnote
  6.     Friend Class Program
  7.         Private Shared Sub Main(ByVal args As String())
  8.             '创建Document实例
  9.             Dim document As Document = New Document()
  10.             '加载Word文档示例
  11.             document.LoadFromFile("我与地坛.docx")
  12.             '获取第一节
  13.             Dim section As Section = document.Sections(0)
  14.             '获取节中的指定段落
  15.             Dim paragraph As Paragraph = section.Paragraphs(1)
  16.             '在段落末尾添加脚注
  17.             Dim footnote As Footnote = paragraph.AppendFootnote(FootnoteType.Footnote)
  18.             '设置脚注的文本内容
  19.             Dim text As TextRange = footnote.TextBody.AddParagraph().AppendText("即使世界毁灭,那又怎样,天地崩塌,于我何干,我在乎的只有他。")
  20.             '设置文本字体和颜色
  21.             text.CharacterFormat.FontName = "宋体"
  22.             text.CharacterFormat.FontSize = 12
  23.             text.CharacterFormat.TextColor = Color.DarkBlue
  24.             '设置脚注上标数字的格式
  25.             footnote.MarkerCharacterFormat.FontName = "Calibri"
  26.             footnote.MarkerCharacterFormat.FontSize = 15
  27.             footnote.MarkerCharacterFormat.Bold = True
  28.             footnote.MarkerCharacterFormat.TextColor = Color.DarkCyan
  29.             '保存结果文档
  30.             document.SaveToFile("添加脚注.docx", FileFormat.Docx)
  31.         End Sub
  32.     End Class
  33. End Namespace
复制代码
效果图


在Word中的特定文本后插入脚注

我们还可以在文档中任何位置的指定文本后插入脚注。以下是详细步骤。

  • 创建Document实例。
  • 使用Document.LoadFromFile() 方法加载Word文档。
  • 使用Document.FindString() 方法查找指定的文本。
  • 使用TextSelection.GetAsOneRange() 方法获取指定文本的文本范围。
  • 使用TextRange.OwnerParagraph 属性获取文本范围所在的段落。
  • 使用Paragraph.ChildObjects.IndexOf() 方法获取段落中文本范围的位置索引。
  • 使用Paragraph.AppendFootnote(FootnoteType.Footnote)方法添加脚注,然后使用Paragraph.ChildObjects.Insert() 方法在指定文本后插入脚注
  • 设置脚注的文本内容、字体和颜色,然后设置脚注上标数字的格式。
  • 使用Document.SaveToFile() 方法保存结果文档。
完整代码

C#
  1. using Spire.Doc;
  2. using Spire.Doc.Documents;
  3. using Spire.Doc.Fields;
  4. using System.Drawing;
  5. namespace InsertFootnote
  6. {
  7.     class Program
  8.     {
  9.         static void Main(string[] args)
  10.         {
  11.             //创建Document实例
  12.             Document document = new Document();
  13.             //加载Word文档示例
  14.             document.LoadFromFile("我与地坛.docx");
  15.             //查找指定的文本字符串
  16.             TextSelection selection = document.FindString("最苦的母亲", false, true);
  17.             //获取指定文本的文本范围
  18.             TextRange textRange = selection.GetAsOneRange();
  19.             //获取文本范围所在的段落
  20.             Paragraph paragraph = textRange.OwnerParagraph;
  21.             //获取段落中文本范围的位置索引
  22.             int index = paragraph.ChildObjects.IndexOf(textRange);
  23.             //添加脚注
  24.             Footnote footnote = paragraph.AppendFootnote(FootnoteType.Footnote);
  25.             //在指定段落后插入脚注
  26.             paragraph.ChildObjects.Insert(index + 1, footnote);
  27.             //设置脚注的文本内容
  28.             TextRange text = footnote.TextBody.AddParagraph().AppendText("不知道儿子的不幸在母亲那儿总是要加倍的。");
  29.             //设置文本字体和颜色
  30.             text.CharacterFormat.FontName = "宋体";
  31.             text.CharacterFormat.FontSize = 12;
  32.             text.CharacterFormat.TextColor = Color.DarkBlue;
  33.             //设置脚注上标数字的格式
  34.             footnote.MarkerCharacterFormat.FontName = "Calibri";
  35.             footnote.MarkerCharacterFormat.FontSize = 15;
  36.             footnote.MarkerCharacterFormat.Bold = true;
  37.             footnote.MarkerCharacterFormat.TextColor = Color.DarkGreen;
  38.             //保存结果文档
  39.             document.SaveToFile("插入脚注.docx", FileFormat.Docx);
  40.         }
  41.     }
  42. }
复制代码
VB.NET
  1. Imports Spire.Doc
  2. Imports Spire.Doc.Documents
  3. Imports Spire.Doc.Fields
  4. Imports System.Drawing
  5. Namespace InsertFootnote
  6.     Friend Class Program
  7.         Private Shared Sub Main(ByVal args As String())
  8.             '创建Document实例
  9.             Dim document As Document = New Document()
  10.             '加载Word文档示例
  11.             document.LoadFromFile("我与地坛.docx")
  12.             '查找指定的文本字符串
  13.             Dim selection As TextSelection = document.FindString("最苦的母亲", False, True)
  14.             '获取指定文本的文本范围
  15.             Dim textRange As TextRange = selection.GetAsOneRange()
  16.             '获取文本范围所在的段落
  17.             Dim paragraph As Paragraph = textRange.OwnerParagraph
  18.             '获取段落中文本范围的位置索引
  19.             Dim index As Integer = paragraph.ChildObjects.IndexOf(textRange)
  20.             '添加脚注
  21.             Dim footnote As Footnote = paragraph.AppendFootnote(FootnoteType.Footnote)
  22.             '在指定段落后插入脚注
  23.             paragraph.ChildObjects.Insert(index + 1, footnote)
  24.             '设置脚注的文本内容
  25.             Dim text As TextRange = footnote.TextBody.AddParagraph().AppendText("不知道儿子的不幸在母亲那儿总是要加倍的。")
  26.             '设置文本字体和颜色
  27.             text.CharacterFormat.FontName = "宋体"
  28.             text.CharacterFormat.FontSize = 12
  29.             text.CharacterFormat.TextColor = Color.DarkBlue
  30.             '设置脚注上标数字的格式
  31.             footnote.MarkerCharacterFormat.FontName = "Calibri"
  32.             footnote.MarkerCharacterFormat.FontSize = 15
  33.             footnote.MarkerCharacterFormat.Bold = True
  34.             footnote.MarkerCharacterFormat.TextColor = Color.DarkGreen
  35.             '保存结果文档
  36.             document.SaveToFile("插入脚注.docx", FileFormat.Docx)
  37.         End Sub
  38.     End Class
  39. End Namespace
复制代码
效果图


—本文完—

来源:https://www.cnblogs.com/Carina-baby/archive/2023/03/08/17191420.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具