彩票走势图

logo E-iceblue中文文档

在word中重置页码


开发人员广泛使用节来为每个不同的节设置不同的格式或布局选项,例如为不同的节使用不同的页眉和页脚信息,并为每个节动态重置页码。在 Spire.Doc for .NET 的帮助下,我们可以轻松地在 C# 和 VB.NET 中插入词段和删除词段。我们将向您展示如何使用 Spire.Doc 轻松地为每个部分重置从 1 开始的页码。

Spire.Doc for.NET 最新下载 

技术交流Q群(767755948)

首先确保已正确安装,然后通过以下路径在下载的 Bin 文件夹中添加 Spire.Doc.dll 作为参考:“..\Spire.Doc\Bin\NET4.0\ Spire.Doc .dll”。这是如何重置每个部分的页码的代码。

第 1 步:加载三个不同的 word 文档

Document document1 = new Document();
document1.LoadFromFile("..\\..\\1.docx");

Document document2 = new Document();
document2.LoadFromFile("..\\..\\2.docx");

Document document3 = new Document();
document3.LoadFromFile("..\\..\\3.docx");

第 2 步: 使用section方法将所有文档合并为一个word文档

foreach (Section sec in document2.Sections)
{
document1.Sections.Add(sec.Clone());
}
foreach (Section sec in document3.Sections)
{
document1.Sections.Add(sec.Clone());
}

第 3 步:浏览文档

//Traverse every section of document1
foreach (Section sec in document1.Sections)
{
//Traverse every object of the footer
foreach (DocumentObject obj in sec.HeadersFooters.Footer.ChildObjects)
{
if (obj.DocumentObjectType == DocumentObjectType.StructureDocumentTag)
{
DocumentObject para = obj.ChildObjects[0];
foreach (DocumentObject item in para.ChildObjects)
{
if (item.DocumentObjectType == DocumentObjectType.Field)

第 4 步:找到字段类型 FieldNumPages 并将其更改为 FieldSectionPages

//Find the item and its field type is FieldNumPages
if ((item as Field).Type == FieldType.FieldNumPages)
{
//Change field type to FieldSectionPages
(item as Field).Type = FieldType.FieldSectionPages;

第 5 步 : 重新开始节的页码并将起始页码设置为 1

document1.Sections[1].PageSetup.RestartPageNumbering = true;
document1.Sections[1].PageSetup.PageStartingNumber = 1;

document1.Sections[2].PageSetup.RestartPageNumbering = true;
document1.Sections[2].PageSetup.PageStartingNumber = 1
;

第 6 步:将文档保存到文件并启动它。

document1.SaveToFile("sample.docx",FileFormat.Docx);
System.Diagnostics.Process.Start("sample.docx");

完整代码

namespace ResetPageNumber
{
class Program
{
static void Main(string[] args)
{
Document document1 = new Document();
document1.LoadFromFile("..\\..\\1.docx");

Document document2 = new Document();
document2.LoadFromFile("..\\..\\2.docx");

Document document3 = new Document();
document3.LoadFromFile("..\\..\\3.docx");

foreach (Section sec in document2.Sections)
{
document1.Sections.Add(sec.Clone());
}

foreach (Section sec in document3.Sections)
{
document1.Sections.Add(sec.Clone());

}
foreach (Section sec in document1.Sections)
{
foreach (DocumentObject obj in sec.HeadersFooters.Footer.ChildObjects)
{
if (obj.DocumentObjectType == DocumentObjectType.StructureDocumentTag)
{
DocumentObject para = obj.ChildObjects[0];
foreach (DocumentObject item in para.ChildObjects)
{
if (item.DocumentObjectType == DocumentObjectType.Field)
{
if ((item as Field).Type == FieldType.FieldNumPages)
{
(item as Field).Type = FieldType.FieldSectionPages;
}
}
}
}
}
}

document1.Sections[1].PageSetup.RestartPageNumbering = true;
document1.Sections[1].PageSetup.PageStartingNumber = 1;

document1.Sections[2].PageSetup.RestartPageNumbering = true;
document1.Sections[2].PageSetup.PageStartingNumber = 1;

document1.SaveToFile("sample.docx",FileFormat.Docx);
System.Diagnostics.Process.Start("sample.docx");
}
}
}
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP