使用C#代码在 Word 中删除页眉或页脚

如果 Word 文档中的页眉或页脚包含不必要的信息,例如过时的版本号、多余的公司标志或错误的作者姓名,删除它们可以使文档看起来更加专业、简洁。本文将介绍如何使用 Spire.Doc for .NETC# 中删除 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 天的试用许可证

相关推荐
jasligea16 分钟前
构建个人智能助手
开发语言·python·自然语言处理
kokunka20 分钟前
【源码+注释】纯C++小游戏开发之射击小球游戏
开发语言·c++·游戏
Traced back1 小时前
WinForms 线程安全三剑客详解
安全·c#·winform
喵叔哟1 小时前
05-LINQ查询语言入门
c#·solr·linq
云栖梦泽1 小时前
易语言开发从入门到精通:补充篇·网络编程进阶+实用爬虫开发·API集成·代理IP配置·异步请求·防封禁优化
开发语言
java1234_小锋1 小时前
Java高频面试题:SpringBoot为什么要禁止循环依赖?
java·开发语言·面试
铅笔侠_小龙虾1 小时前
Flutter Demo
开发语言·javascript·flutter
2501_944525542 小时前
Flutter for OpenHarmony 个人理财管理App实战 - 账户详情页面
android·java·开发语言·前端·javascript·flutter
福大大架构师每日一题2 小时前
ComfyUI v0.11.1正式发布:新增开发者专属节点支持、API节点强化、Python 3.14兼容性更新等全方位优化!
开发语言·python
wangdaoyin20102 小时前
若依vue2前后端分离集成flowable
开发语言·前端·javascript