如果 Word 文档中的页眉或页脚包含不必要的信息,例如过时的版本号、多余的公司标志或错误的作者姓名,删除它们可以使文档看起来更加专业、简洁。本文将介绍如何使用 Spire.Doc for .NET 在 C# 中删除 Word 文档的页眉或页脚。
安装 Spire.Doc for .NET
首先,你需要将 Spire.Doc for .NET 包中包含的 DLL 文件添加为 .NET 项目的引用。这些 DLL 文件可以通过该链接下载,或者通过 NuGet 进行安装。
cs
PM> Install-Package Spire.Doc
使用 C# 删除 Word 中的页眉
Spire.Doc for .NET 支持分别获取首页、奇数页和偶数页中的页眉,并可通过 HeaderFooter.ChildObjects.Clear() 方法将它们全部删除。
示例代码如下:
cs
using Spire.Doc;
using Spire.Doc.Documents;
namespace RemoveHeader
{
class Program
{
static void Main(string[] args)
{
// 创建一个 Document 实例
Document doc = new Document();
// 加载 Word 文档
doc.LoadFromFile("HeaderFooter.docx");
// 获取第一个节
Section section = doc.Sections[0];
// 遍历该节中的所有段落
foreach (Paragraph para in section.Paragraphs)
{
// 遍历每个段落中的所有子对象
foreach (DocumentObject obj in para.ChildObjects)
{
// 删除首页页眉
HeaderFooter header;
header = section.HeadersFooters[HeaderFooterType.HeaderFirstPage];
if (header != null)
header.ChildObjects.Clear();
// 删除奇数页页眉
header = section.HeadersFooters[HeaderFooterType.HeaderOdd];
if (header != null)
header.ChildObjects.Clear();
// 删除偶数页页眉
header = section.HeadersFooters[HeaderFooterType.HeaderEven];
if (header != null)
header.ChildObjects.Clear();
}
}
// 保存结果文档
doc.SaveToFile("RemoveHeader.docx", FileFormat.Docx);
}
}
}
使用 C# 删除 Word 中的页脚
删除页脚的方式与删除页眉类似,同样可以先获取不同页面上的页脚,然后一次性将它们删除。
示例代码如下:
cs
using Spire.Doc;
using Spire.Doc.Documents;
namespace RemoveHeader
{
class Program
{
static void Main(string[] args)
{
// 创建一个 Document 实例
Document doc = new Document();
// 加载 Word 文档
doc.LoadFromFile("HeaderFooter.docx");
// 获取第一个节
Section section = doc.Sections[0];
// 遍历该节中的所有段落
foreach (Paragraph para in section.Paragraphs)
{
// 遍历每个段落中的所有子对象
foreach (DocumentObject obj in para.ChildObjects)
{
// 删除首页页脚
HeaderFooter footer;
footer = section.HeadersFooters[HeaderFooterType.FooterFirstPage];
if (footer != null)
footer.ChildObjects.Clear();
// 删除奇数页页脚
footer = section.HeadersFooters[HeaderFooterType.FooterOdd];
if (footer != null)
footer.ChildObjects.Clear();
// 删除偶数页页脚
footer = section.HeadersFooters[HeaderFooterType.FooterEven];
if (footer != null)
footer.ChildObjects.Clear();
}
}
// 保存结果文档
doc.SaveToFile("RemoveFooter.docx", FileFormat.Docx);
}
}
}
申请临时许可证
如果你希望移除生成文档中的评估提示信息,或解除功能限制,请为自己申请一个 30 天的试用许可证。