DocumentFirstSection Property |
Namespace: Aspose.Words
// Open the template document, containing obsolete copyright information in the footer Document doc = new Document(MyDir + "Footer.docx"); HeaderFooterCollection headersFooters = doc.FirstSection.HeadersFooters; HeaderFooter footer = headersFooters[HeaderFooterType.FooterPrimary]; FindReplaceOptions options = new FindReplaceOptions { MatchCase = false, FindWholeWordsOnly = false }; int currentYear = System.DateTime.Now.Year; footer.Range.Replace("(C) 2006 Aspose Pty Ltd.", $"Copyright (C) {currentYear} by Aspose Pty Ltd.", options); doc.Save(ArtifactsDir + "HeaderFooter.ReplaceText.doc");
// Open a document Document doc = new Document(); DocumentBuilder builder = new DocumentBuilder(doc); builder.Write("Section 1"); builder.MoveToHeaderFooter(HeaderFooterType.HeaderPrimary); builder.Write("Primary header"); builder.MoveToHeaderFooter(HeaderFooterType.FooterPrimary); builder.Write("Primary footer"); // Get the first section in the document Section section = doc.FirstSection; // A Section is a composite node and therefore can contain child nodes // Section can contain only Body and HeaderFooter nodes foreach (Node node in section) { // Every node has the NodeType property switch (node.NodeType) { case NodeType.Body: { // If the node type is Body, we can cast the node to the Body class Body body = (Body) node; // Write the content of the main story of the section to the console Console.WriteLine("*** Body ***"); Console.WriteLine(body.GetText()); break; } case NodeType.HeaderFooter: { // If the node type is HeaderFooter, we can cast the node to the HeaderFooter class HeaderFooter headerFooter = (HeaderFooter) node; // Write the content of the header footer to the console Console.WriteLine("*** HeaderFooter ***"); Console.WriteLine(headerFooter.HeaderFooterType); Console.WriteLine(headerFooter.GetText()); break; } default: { // Other types of nodes never occur inside a Section node throw new Exception("Unexpected node type in a section."); } } }