How to Copy First Section Header/Footer and Remove in Core Word?
Syncfusion® Essential® DocIO is a .NET Word library used to create, read, edit, and convert Word documents programmatically without Microsoft Word or interop dependencies. Using this library, you can copy first section header/footer to other sections and remove first section in a Word document using C#.
Follow the steps below:
- Retrieve the first section of the Word document.
- Remove existing headers and footers from the remaining sections of the Word document.
- Clone and add the headers and footers from the first section to the remaining sections.
- Remove the first section from the Word document.
Steps to copy first section header/footer to other sections and remove first section in a Word document:
- Create a new .NET Core console application project.
- Install the Syncfusion.DocIO.Net.Core NuGet package as a reference to your project from NuGet.org.
Starting with v16.2.0.x, if you reference Syncfusion® assemblies from trial setup or from the NuGet feed, include a license key in your projects. Refer to the link to learn about generating and registering a Syncfusion® license key in your application to use the components without trail message.
- Include the following namespaces in Program.cs file
C#
using Syncfusion.DocIO;
using Syncfusion.DocIO.DLS;
- Use the following code example to copy first section header/footer to other sections and remove first section in a Word document.
C#
//Open an existing Word document from the specified file path.
using (FileStream fileStreamPath = new FileStream(Path.GetFullPath(@"Data/Input.docx"), FileMode.Open, FileAccess.Read))
{
//Create a new instance of the WordDocument class and load the document from the FileStream.
using (WordDocument document = new WordDocument(fileStreamPath, FormatType.Docx))
{
//Retrieve the first section of the Word document.
WSection firstSection = document.Sections[0];
//Iterate through each section in the Word document starting from the second section.
for (int index = 1; index < document.Sections.Count; index++)
{
//Copy the headers and footers from the first section to the current section.
UpdateHeaderFooter(firstSection, document.Sections[index]);
}
//Remove the first section from the document.
document.Sections.RemoveAt(0);
//Create a FileStream to save the modified document to a new file at the specified path.
using (FileStream stream = new FileStream(Path.GetFullPath(@"Output/Output.docx"), FileMode.Create, FileAccess.Write))
{
//Save the Word document to the stream in DOCX format.
document.Save(stream, FormatType.Docx);
}
}
}
- Use the following helper method to copy the source section header and footer to destination section.
C#
/// <summary>
/// Copy the source section header and footer to destination section
/// </summary>
void UpdateHeaderFooter(WSection sourceSection, WSection destinationSection)
{
//Clear the destination section header and footer
ClearHeaderFooter(destinationSection);
//Add Headers
for (int j = 0; j < sourceSection.HeadersFooters.Header.ChildEntities.Count; j++)
{
destinationSection.HeadersFooters.Header.ChildEntities.Add(sourceSection.HeadersFooters.Header.ChildEntities[j].Clone());
}
//Add Footers
for (int j = 0; j < sourceSection.HeadersFooters.Footer.ChildEntities.Count; j++)
{
destinationSection.HeadersFooters.Footer.ChildEntities.Add(sourceSection.HeadersFooters.Footer.ChildEntities[j].Clone());
}
}
- Use the following helper method to clear all header and footer for the section.
C#
/// <summary>
/// Clear all header and footer for the section
/// </summary>
void ClearHeaderFooter(WSection section)
{
//Remove the first page header.
section.HeadersFooters.FirstPageHeader.ChildEntities.Clear();
//Remove the first page footer.
section.HeadersFooters.FirstPageFooter.ChildEntities.Clear();
//Remove the odd footer.
section.HeadersFooters.OddFooter.ChildEntities.Clear();
//Remove the odd header.
section.HeadersFooters.OddHeader.ChildEntities.Clear();
//Remove the even header.
section.HeadersFooters.EvenHeader.ChildEntities.Clear();
//Remove the even footer.
section.HeadersFooters.EvenFooter.ChildEntities.Clear();
}
You can download a complete working sample to copy first section header/footer to other sections and remove first section in a Word document from the GitHub.
The input document is as follows.
By executing the program, you will get the Word document as follows.
Take a moment to peruse the documentation where you can find basic Word document processing options along with the features like mail merge, merge, split, and compare Word documents, find and replace text in the Word document, protect the Word documents, and most importantly, the PDF and Image conversions with code examples.
Conclusion
I hope you enjoyed learning about how to copy first section header/footer and remove first section in Core Word.
You can refer to our ASP.NET Core DocIO feature tour page to know about its other groundbreaking feature representations and documentation, and how to quickly get started for configuration specifications. You can also explore our ASP.NET Core DocIO example to understand how to create and manipulate data.
For current customers, you can check out our components from the License and Downloads page. If you are new to Syncfusion®, you can try our 30-day free trial to check out our other controls.
If you have any queries or require clarifications, please let us know in the comments section below. You can also contact us through our support forums, Direct-Trac, or feedback portal. We are always happy to assist you!