Aspose::Words::Section::get_HeadersFooters method
Contents
[
Hide
]Section::get_HeadersFooters method
Provides access to the headers and footers nodes of the section.
System::SharedPtr<Aspose::Words::HeaderFooterCollection> Aspose::Words::Section::get_HeadersFooters()
Examples
Shows how to delete all footers from a document.
auto doc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Header and footer types.docx");
// Iterate through each section and remove footers of every kind.
for (auto&& section : System::IterateOver(doc->LINQ_OfType<System::SharedPtr<Aspose::Words::Section> >()))
{
// There are three kinds of footer and header types.
// 1 - The "First" header/footer, which only appears on the first page of a section.
System::SharedPtr<Aspose::Words::HeaderFooter> footer = section->get_HeadersFooters()->idx_get(Aspose::Words::HeaderFooterType::FooterFirst);
System::SharedPtr<Aspose::Words::HeaderFooter> condExpression = footer;
if (condExpression != nullptr)
{
condExpression->Remove();
}
// 2 - The "Primary" header/footer, which appears on odd pages.
footer = section->get_HeadersFooters()->idx_get(Aspose::Words::HeaderFooterType::FooterPrimary);
System::SharedPtr<Aspose::Words::HeaderFooter> condExpression2 = footer;
if (condExpression2 != nullptr)
{
condExpression2->Remove();
}
// 3 - The "Even" header/footer, which appears on even pages.
footer = section->get_HeadersFooters()->idx_get(Aspose::Words::HeaderFooterType::FooterEven);
System::SharedPtr<Aspose::Words::HeaderFooter> condExpression3 = footer;
if (condExpression3 != nullptr)
{
condExpression3->Remove();
}
ASSERT_EQ(0, section->get_HeadersFooters()->LINQ_Count(static_cast<System::Func<System::SharedPtr<Aspose::Words::Node>, bool>>(static_cast<std::function<bool(System::SharedPtr<Aspose::Words::Node> hf)>>([](System::SharedPtr<Aspose::Words::Node> hf) -> bool
{
return !(System::ExplicitCast<Aspose::Words::HeaderFooter>(hf))->get_IsHeader();
}))));
}
doc->Save(get_ArtifactsDir() + u"HeaderFooter.RemoveFooters.docx");
Shows how to replace text in a document’s footer.
auto doc = System::MakeObject<Aspose::Words::Document>(get_MyDir() + u"Footer.docx");
System::SharedPtr<Aspose::Words::HeaderFooterCollection> headersFooters = doc->get_FirstSection()->get_HeadersFooters();
System::SharedPtr<Aspose::Words::HeaderFooter> footer = headersFooters->idx_get(Aspose::Words::HeaderFooterType::FooterPrimary);
auto options = System::MakeObject<Aspose::Words::Replacing::FindReplaceOptions>();
options->set_MatchCase(false);
options->set_FindWholeWordsOnly(false);
int32_t currentYear = System::DateTime::get_Now().get_Year();
footer->get_Range()->Replace(u"(C) 2006 Aspose Pty Ltd.", System::String::Format(u"Copyright (C) {0} by Aspose Pty Ltd.", currentYear), options);
doc->Save(get_ArtifactsDir() + u"HeaderFooter.ReplaceText.docx");
See Also
- Class HeaderFooterCollection
- Class Section
- Namespace Aspose::Words
- Library Aspose.Words for C++