在Word中,分节符是一种强大的工具,用于将文档分成不同的部分,每个部分可以有独立的页面设置,如页边距、纸张方向、页眉和页脚等。正确使用分节符可以极大地提升文档的组织性和专业性,特别是在长文档中,需要在不同部分应用不同的样式时。本文将介绍如何使用一个免费的.NET库通过C#实现插入或删除Word分节符。

免费.NET Word库

Free Spire.Doc for .NET 是一款免费的用于对 Word 文档进行操作的 .NET类库,适用于商业或个人用途(但有一定页数限制)。

安装:
我们可以直接在Visual Studio中通过NuGet搜索 “FreeSpire.Doc”,然后点击“安装”将其引用到程序中。或者通过该链接下载产品包,解压后再手动将dll文件添加引用至程序。

Word分节符类型

在Spire.Doc for .NET中,Paragraph.InsertSectionBreak(SectionBreakType breakType) 方法用于在段落中插入分节符。 其中SectionBreakType枚举中包含的几种分节符类型如下:

  • SectionBreakType.NoBreak:表示连续分节符,即新节的内容将紧接着当前页的内容开始,无需新的一页。适用于在同一页面内分隔不同部分的情况。
  • SectionBreakType.NewPage:表示下一页分节符,即新节将从下一页开始。
  • SectionBreakType.OddPage:表示奇数页分节符,即新节将从下一个奇数页上开始。
  • SectionBreakType.EvenPage:表示偶数页分节符,即新节将从下一个偶数页上开始。
  • SectionBreakType.NewColumn:适用于多栏的文档,新节将从下一栏开始。

API参考链接:https://www.e-iceblue.com/apireference/net/Spire.Doc/html/T_Spire_Doc_Documents_SectionBreakType.htm

C# 在Word中插入分节符

主要步骤:

  1. 通过 LoadFromFile() 方法加载 Word 文档。
  2. 使用指定的节中的指定段落。
  3. 使用 InsertSectionBreak() 方法在段落末尾添加分段符。
  4. 使用 SaveToFile() 方法保存结果文档。

示例代码:

using Spire.Doc;
using Spire.Doc.Documents; namespace InsertSectionBreak
{
class Program
{
static void Main(string[] args)
{
//加载Word文档
Document doc = new Document();
doc.LoadFromFile("南极洲.docx"); //获取第一节
Section sec = doc.Sections[0]; //获取该节中第一个段落
Paragraph para = sec.Paragraphs[0]; //插入连续分节符
para.InsertSectionBreak(SectionBreakType.NoBreak); //保存文件
doc.SaveToFile("连续分节符.docx", FileFormat.Docx);
}
}
}

插入连续分节符:

C# 删除Word中的分节符

本示例删除所有分节符的操作是通过将原始Word文档每一节中的内容复制到新建Word文档中来实现的。
主要步骤如下:

  1. 通过 LoadFromFile() 方法加载原始Word 文档。
  2. 创建一个新的Word文档,并往其中添加一节。
  3. 遍历原始文档中每一节,并获取其子对象内容。
  4. 复制获取到的子对象,然后使用 Section.Body.ChildObjects.Add() 方法将子对象内容添加到新文档中。
  5. 使用 SaveToFile() 方法保存新Word文档。

示例代码:

using Spire.Doc;

namespace DeleteSectionBreak
{
class Program
{
static void Main(string[] args)
{
//加载原始Word文档
Document doc = new Document();
doc.LoadFromFile("实验.docx"); //创建新Word文档
Document NewDoc = new Document();
//添加一节
Section sec = NewDoc.AddSection(); //遍历原始文档中所有节
for (int i = 0; i < doc.Sections.Count; i++)
{
//获取当前节
Section section = doc.Sections[i]; //遍历该节中所有子对象
for (int j = 0; j < section.Body.ChildObjects.Count; j++)
{
//获取子对象并复制到新文档中
DocumentObject obj = section.Body.ChildObjects[j];
sec.Body.ChildObjects.Add(obj.Clone());
}
} //保存新文档
NewDoc.SaveToFile("删除分节符.docx", FileFormat.Docx);
}
}
}

效果图:

该免费.NET Word库也支持操作分页符、页边距、页眉页脚的等各项页面设置,更多示例可点击查看:
https://www.e-iceblue.cn/spiredoc/spire-doc-for-net-program-guide-content.html

通过C#在Word中插入或删除分节符的更多相关文章

  1. word 的使用 —— 分页符与分节符

    节的概念:节定义了一些格式, 如页边距.页面的方向.页眉和页脚,以及页码的顺序. 分节符是指为表示节的结尾插入的标记. 分节符的作用: 分节符起着分隔其前后文本格式的作用,如果删除了某个分节符,它前面 ...

  2. word2007里插入分节符

    1.打开Word文档,将鼠标定位到需要插入分页符的位置(比如第2页的末尾处),切换到"页面布局"功能区. 2.在"页面设置"分组中单击"分隔符&quo ...

  3. Word中怎样删除分节符而不影响前节页面设置

    在Word中,通过常规方法删除一个不需要的分节符时,会默认将分节符后面的页面设置带入前一节.比如,第一节是纵向排版,第二节是横向排版,当删除第二节的全部内容,包括二者之间的分节符之后,就会使得第一节的 ...

  4. word中正文分栏重新换页问题

    小论文常需要正文分栏,但是标题.摘要不分栏的编排格式. 1.在摘要后面加入分隔符来将内容分为摘要和正文两个部分.选择 插入→分隔符→分节符(连续). 2.然后进行分栏.选择 格式→分栏. 3.此时如果 ...

  5. Word文档分节设置页码

    在一篇论文中需要将摘要和目录作为一部分设置罗马数字页码,正文部分设置阿拉伯数字页码. 大致效果如下图所示: 这里面用到了分节符,步骤如下: 1 :点击开始菜单栏下 显示/隐藏编辑标记 2:点击插入菜单 ...

  6. Microsoft office(1)分页符和分节符

    Microsoft office下的页面布局中的分页符和分节符的区别: 分页符:标记一页的终止并开始下一页的点 分节符:插入分节符并在下一页开始新节 一般情况下,分节符在分页符外围,分节符一般是各种格 ...

  7. Word2010插入页码分节符

    不是分页符,分节符主要是为了插入前后两种不同类型的页码,比如前面查罗马数字,从目录开始插入阿拉伯数字.                 

  8. word双栏排版,最后一页由于分节符造成最后一页是空白页,删除分节符双栏就变成了单栏

    遇到这个问题时,我们把心思都花在了如何“删除”这个空白页. 但是最有效的办法不是“删除”,而是(以word2007为例): Word 2007中文版: 鼠标放在最后一页,点击页面布局①,选择页面布局右 ...

  9. word中替换【换行符】与【回车符】

  10. 在 word 中对正文和目录进行分节显示页码

    使用版本 word 2016 使目录独占一页:在正文第一页的第一个字符前插入分节符下一页(布局--分节符--下一页),此时会在正文第一个字符前插入分节符.在之前插入一张空白页,用于插入目录.(插入 - ...

随机推荐

  1. node.js 手稿

  2. Nunjucks

    Nunjucks是什么东东?其实它是一个模板引擎. 那什么是模板引擎? 模板引擎就是基于模板配合数据构造出字符串输出的一个组件.比如下面的函数就是一个模板引擎: function examResult ...

  3. 小程序-云数据库的add,get,remove,update

    云数据库的使用就是使用简单的原生封装wx.cloud.database().collection("list"),然后就是add,get,remove,update四个方法 初始化 ...

  4. TypeScript 学习笔记 — 类型推断和类型保护(十一)

    目录 类型推断 1.赋值推断 2.返回值推断 3.函数推断(反向推断) 4.属性推断 5.类型反推 6.索引访问操作符 7.类型映射 类型保护 1.typeof 类型保护 2.instanceof 类 ...

  5. Python按条件筛选、剔除表格数据并绘制剔除前后的直方图

      本文介绍基于Python语言,读取Excel表格文件数据,以其中某一列数据的值为标准,对于这一列数据处于指定范围的所有行,再用其他几列数据的数值,加以数据筛选与剔除:同时,对筛选前.后的数据分别绘 ...

  6. Ubuntu本地安装Docker

    Ubuntu本地安装Docker 目录 Ubuntu本地安装Docker 查看Ubuntu系统版本代号 安装 修改镜像源 官方文档:Install Docker Engine on Ubuntu | ...

  7. c++17 structure binding test

    1 /*test for struct binding*/ 2 3 #include <string> 4 #include <iostream> 5 using namesp ...

  8. 【服务器】Ubuntu虚拟内存设置

    引子 最近服务器内存老是爆掉,64G的内存对于四五个人同时使用还是有点勉强,上网查询了一下虚拟内存的教程,本博客记录一下方法. swap内存设置 假设你想将swap文件放在/mnt/data/mem目 ...

  9. 带你学习通过GitHub Actions如何快速构建和部署你自己的项目,打造一条属于自己的流水线

    本文主要讲解通过github的actions来对我们项目进行ci/cd 一.actions简介 GitHub Actions 是一种持续集成和持续交付 (CI/CD) 平台,可用于自动执行生成.测试和 ...

  10. 关于mybatisplus与mybatis的自动填充混用问题

    public class MybatisPlusAutoFillHandler implements MetaObjectHandler { //插入时的填充策略 @Override public v ...