C# 插入或删除word分页符

简介: C# 插入或删除word分页符 分页符是word中常用的一种分页的符号,它标志着上一页的结束和下一页的开始。在word中分页符有两种,一种是自动分页符,也叫软分页符,即一页数据写满以后转到下一页时word自动插入的一个分页符;另一种是手动分页符,也称为硬分页符,通常用于在指定位置强制分页。

C# 插入或删除word分页符

分页符是word中常用的一种分页的符号,它标志着上一页的结束和下一页的开始。在word中分页符有两种,一种是自动分页符,也叫软分页符,即一页数据写满以后转到下一页时word自动插入的一个分页符;另一种是手动分页符,也称为硬分页符,通常用于在指定位置强制分页。插入手动分页符可以方便打印,但很多时候手动分页符也会影响整个文档的排版问题,这时就需要移除分页符。其实有很多种方法可以实现在word中插入或删除手动分页符,就不一 一介绍了,这里主要分享一下如何使用C#来完成这一功能(如果需要VB.NET代码可以去谷歌搜索C# to VB.NET转换就可以了)。

第一部分:插入分页符

步骤1新建一个控制台项目并添加引用和命名空间

using Spire.Doc;
using Spire.Doc.Documents;

 

步骤2新建一个word文档对象并加载需要插入分页符的文档

Document document = new Document();
document.LoadFromFile(@"C:\Users\Administrator\Desktop\法国旅游景点介绍.docx");

 

步骤3在指定的位置添加分页符

document.Sections[0].Paragraphs[1].AppendBreak(BreakType.PageBreak);

 

步骤4保存并重启文档

document.SaveToFile("分页符.docx", FileFormat.Docx2010);
System.Diagnostics.Process.Start("分页符.docx");

 

原文档截图:

                     

与效果图对比:

这里我将输出的word文档视图改为双页视图方便对比。

 

第二部分:删除分页符

步骤1与第一部分步骤2一样,新建一个word文档对象并加载待删除分页符的文档

Document document = new Document();
document.LoadFromFile("分页符.docx");

 

步骤2遍历文档中第一个section的所有段落,找到分页符并将其删除。

for (int j = 0; j < document.Sections[0].Paragraphs.Count; j++)
            {
                Paragraph p = document.Sections[0].Paragraphs[j];
                for (int i = 0; i < p.ChildObjects.Count; i++)
                {
                    DocumentObject obj = p.ChildObjects[i];
                    if (obj.DocumentObjectType == DocumentObjectType.Break)
                    {
                        Break b = obj as Break;
                        p.ChildObjects.Remove(b);
                    }
                }
            }

 

步骤3保存并重启文档

document.SaveToFile("移除分页符.docx", FileFormat.Docx2010);
System.Diagnostics.Process.Start("移除分页符.docx");

 

全部代码整合参考

using Spire.Doc;
using Spire.Doc.Documents;

namespace insert_and_remove_page_break_in_word
{
    class Program
    {
        static void Main(string[] args)
        {
            Document document = new Document();
            document.LoadFromFile(@"C:\Users\Administrator\Desktop\文件A.docx");

            //在指定位置插入分页符
            document.Sections[0].Paragraphs[1].AppendBreak(BreakType.PageBreak);

            //移除分页符
            /*for (int j = 0; j < document.Sections[0].Paragraphs.Count; j++)
            {
                Paragraph p = document.Sections[0].Paragraphs[j];
                for (int i = 0; i < p.ChildObjects.Count; i++)
                {
                    DocumentObject obj = p.ChildObjects[i];
                    if (obj.DocumentObjectType == DocumentObjectType.Break)
                    {
                        Break b = obj as Break;
                        p.ChildObjects.Remove(b);
                    }
                }
            }*/

            document.SaveToFile("文件B.docx", FileFormat.Docx2010);
            System.Diagnostics.Process.Start("文件B.docx");
        }
    }
}

 

总结:

在这个方案中我使用了E-iceblue公司的免费Word控件,它方便易用,而且运行不依赖office,同时还支持其它功能如新建、阅读、编辑及转换等。使用时需要注意的是免费版有一定的限制,但我觉得一般情况下个人使用已经足够了。供有需要的朋友参考。

目录
相关文章
|
7月前
|
C# 开发工具 数据安全/隐私保护
C# 实现 Word 加盖骑缝章效果
C# 实现 Word 加盖骑缝章效果
|
7月前
|
SQL 安全 API
C# 读取Word表格到DataSet
C# 读取Word表格到DataSet
|
26天前
|
XML C# 开发工具
C# 删除Word文档中的段落
【11月更文挑战第3天】本文介绍了两种方法来操作 Word 文档:一是使用 `Microsoft.Office.Interop.Word` 库,适用于 Windows 环境下操作 Word 文档,需引用相应库并在代码中引入命名空间;二是使用 Open XML SDK,适用于处理 .docx 格式的文档,通过引用 `DocumentFormat.OpenXml` 库实现。文中提供了示例代码,展示了如何打开、删除段落并保存文档。
|
4月前
|
数据库
C#Winform使用NPOI获取word中的数据
C#Winform使用NPOI获取word中的数据
184 2
|
7月前
|
存储 SQL 数据库
C# 将 Word 转文本存储到数据库并进行管理
C# 将 Word 转文本存储到数据库并进行管理
131 2
|
7月前
|
存储 SQL 数据库
C# 将 Word 转文本存储到数据库并进行管理
C# 将 Word 转文本存储到数据库并进行管理
|
7月前
|
存储 SQL C#
C# 读取二维数组集合输出到Word预设表格
C# 读取二维数组集合输出到Word预设表格
|
7月前
|
SQL C# 数据库
C# 读取多条数据记录导出到 Word 标签模板
C# 读取多条数据记录导出到 Word 标签模板
|
7月前
|
C# 开发工具 数据安全/隐私保护
C#实现基于Word保护性模板文件的修改
C#实现基于Word保护性模板文件的修改