HeaderFooter

HeaderFooter class

Repräsentiert einen Container für den Kopf- oder Fußzeilentext eines Abschnitts.

public class HeaderFooter : Story

Konstrukteure

Name Beschreibung
HeaderFooter(DocumentBase, HeaderFooterType) Erstellt eine neue Kopf- oder Fußzeile des angegebenen Typs.

Eigenschaften

Name Beschreibung
ChildNodes { get; } Ruft alle unmittelbar untergeordneten Knoten dieses Knotens ab.
Count { get; } Ruft die Anzahl der unmittelbaren Kinder dieses Knotens ab.
CustomNodeId { get; set; } Gibt die benutzerdefinierte Knotenkennung an.
virtual Document { get; } Ruft das Dokument ab, zu dem dieser Knoten gehört.
FirstChild { get; } Ruft das erste untergeordnete Element des Knotens ab.
FirstParagraph { get; } Ruft den ersten Absatz in der Geschichte ab.
HasChildNodes { get; } Gibt wahr zurück, wenn dieser Knoten untergeordnete Knoten hat.
HeaderFooterType { get; } Ruft den Typ dieser Kopf-/Fußzeile ab.
override IsComposite { get; } Gibt wahr zurück, da dieser Knoten untergeordnete Knoten haben kann.
IsHeader { get; } Wahr, wenn dies der Fall ist Kopfzeile Fußzeile Objekt ist ein Header.
IsLinkedToPrevious { get; set; } Wahr, wenn diese Kopf- oder Fußzeile mit der entsprechenden Kopf- oder Fußzeile im vorherigen Abschnitt verknüpft ist.
LastChild { get; } Ruft das letzte untergeordnete Element des Knotens ab.
LastParagraph { get; } Ruft den letzten Absatz in der Story ab.
NextSibling { get; } Ruft den Knoten ab, der diesem Knoten unmittelbar folgt.
override NodeType { get; } gibt zurück NodeType.HeaderFooter .
Paragraphs { get; } Ruft eine Sammlung von Absätzen ab, die der Geschichte direkt untergeordnet sind.
ParentNode { get; } Ruft den unmittelbar übergeordneten Knoten dieses Knotens ab.
ParentSection { get; } Ruft den übergeordneten Abschnitt dieser Story ab.
PreviousSibling { get; } Ruft den Knoten unmittelbar vor diesem Knoten ab.
Range { get; } Gibt a zurück Bereich Objekt, das den Teil eines Dokuments darstellt, das in diesem Knoten enthalten ist.
StoryType { get; } Ruft den Typ dieser Geschichte ab.
Tables { get; } Ruft eine Sammlung von Tabellen ab, die unmittelbar untergeordnete Elemente der Story sind.

Methoden

Name Beschreibung
override Accept(DocumentVisitor) Akzeptiert einen Besucher.
AppendChild(Node) Fügt den angegebenen Knoten am Ende der Liste der untergeordneten Knoten für diesen Knoten hinzu.
AppendParagraph(string) Eine Shortcut-Methode, die a erstelltParagraph Objekt mit optionalem Text und fügt ihn an das Ende dieses Objekts an.
Clone(bool) Erstellt ein Duplikat des Knotens.
CreateNavigator() Reserviert für Systemnutzung. IXPfadNavigierbar.
DeleteShapes() Löscht alle Formen aus dem Text dieser Geschichte.
GetAncestor(NodeType) Ruft den ersten Vorfahren der angegebenen abNodeType .
GetAncestor(Type) Ruft den ersten Vorfahren des angegebenen Objekttyps ab.
GetChild(NodeType, int, bool) Gibt einen N-ten untergeordneten Knoten zurück, der dem angegebenen Typ entspricht.
GetChildNodes(NodeType, bool) Gibt eine Live-Sammlung von untergeordneten Knoten zurück, die dem angegebenen Typ entsprechen.
GetEnumerator() Bietet Unterstützung für die Iteration für jeden Stil über die untergeordneten Knoten dieses Knotens.
override GetText() Ruft den Text dieses Knotens und aller seiner Kinder ab.
IndexOf(Node) Gibt den Index des angegebenen untergeordneten Knotens im untergeordneten Knotenarray zurück.
InsertAfter(Node, Node) Fügt den angegebenen Knoten unmittelbar nach dem angegebenen Referenzknoten ein.
InsertBefore(Node, Node) Fügt den angegebenen Knoten unmittelbar vor dem angegebenen Referenzknoten ein.
NextPreOrder(Node) Ruft den nächsten Knoten gemäß dem Traversalalgorithmus des Vorbestellungsbaums ab.
PrependChild(Node) Fügt den angegebenen Knoten am Anfang der Liste der untergeordneten Knoten für diesen Knoten hinzu.
PreviousPreOrder(Node) Ruft den vorherigen Knoten gemäß dem Traversalalgorithmus des Vorbestellungsbaums ab.
Remove() Entfernt sich selbst vom übergeordneten Element.
RemoveAllChildren() Entfernt alle untergeordneten Knoten des aktuellen Knotens.
RemoveChild(Node) Entfernt den angegebenen untergeordneten Knoten.
RemoveSmartTags() Entfernt alleSmartTag Nachkommenknoten des aktuellen Knotens.
SelectNodes(string) Wählt eine Liste von Knoten aus, die mit dem XPath-Ausdruck übereinstimmen.
SelectSingleNode(string) Wählt den ersten Knoten aus, der mit dem XPath-Ausdruck übereinstimmt.
ToString(SaveFormat) Exportiert den Inhalt des Knotens in einen String im angegebenen Format.
ToString(SaveOptions) Exportiert den Inhalt des Knotens unter Verwendung der angegebenen Speicheroptionen in einen String.

Bemerkungen

Kopfzeile Fußzeile enthalten kann Absatz und Tisch untergeordnete Knoten.

Kopfzeile Fußzeile ist ein Knoten auf Abschnittsebene und kann nur ein Kind von sein Abschnitt . Es kann nur einen geben Kopfzeile Fußzeile oder jederHeaderFooterType in einem Abschnitt.

Wenn Abschnitt hat kein Kopfzeile Fußzeile eines bestimmten Typs oder der Kopfzeile Fußzeile keine untergeordneten Knoten hat, wird diese Kopf-/Fußzeile als mit der Kopf-/Fußzeile desselben Typs des vorherigen Abschnitts in Microsoft Word verknüpft betrachtet.

Wann Kopfzeile Fußzeile enthält mindestens eine Absatz, wird es in Microsoft Word nicht mehr als mit dem vorherigen verknüpft betrachtet.

Beispiele

Zeigt, wie Text in der Fußzeile eines Dokuments ersetzt wird.

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 = DateTime.Now.Year;
footer.Range.Replace("(C) 2006 Aspose Pty Ltd.", $"Copyright (C) {currentYear} by Aspose Pty Ltd.", options);

doc.Save(ArtifactsDir + "HeaderFooter.ReplaceText.docx");

Zeigt, wie alle Fußzeilen aus einem Dokument gelöscht werden.

Document doc = new Document(MyDir + "Header and footer types.docx");

// Jeden Abschnitt durchlaufen und Fußzeilen aller Art entfernen.
foreach (Section section in doc.OfType<Section>())
{
    // Es gibt drei Arten von Fußzeilen- und Kopfzeilentypen.
    // 1 - Die "erste" Kopf-/Fußzeile, die nur auf der ersten Seite eines Abschnitts erscheint.
    HeaderFooter footer = section.HeadersFooters[HeaderFooterType.FooterFirst];
    footer?.Remove();

    // 2 - Die "primäre" Kopf-/Fußzeile, die auf ungeraden Seiten erscheint.
    footer = section.HeadersFooters[HeaderFooterType.FooterPrimary];
    footer?.Remove();

     // 3 - Die "gerade" Kopf-/Fußzeile, die auf geraden Seiten erscheint.
    footer = section.HeadersFooters[HeaderFooterType.FooterEven];
    footer?.Remove();

    Assert.AreEqual(0, section.HeadersFooters.Count(hf => !((HeaderFooter)hf).IsHeader));
}

doc.Save(ArtifactsDir + "HeaderFooter.RemoveFooters.docx");

Zeigt, wie Sie eine Kopf- und eine Fußzeile erstellen.

Document doc = new Document();

// Erstellen Sie eine Kopfzeile und hängen Sie einen Absatz daran an. Der Text in diesem Absatz
// erscheint oben auf jeder Seite dieses Abschnitts über dem Haupttext.
HeaderFooter header = new HeaderFooter(doc, HeaderFooterType.HeaderPrimary);
doc.FirstSection.HeadersFooters.Add(header);

Paragraph para = header.AppendParagraph("My header.");

Assert.True(header.IsHeader);
Assert.True(para.IsEndOfHeaderFooter);

// Erstellen Sie eine Fußzeile und hängen Sie einen Absatz daran an. Der Text in diesem Absatz
// wird unten auf jeder Seite dieses Abschnitts unter dem Haupttext angezeigt.
HeaderFooter footer = new HeaderFooter(doc, HeaderFooterType.FooterPrimary);
doc.FirstSection.HeadersFooters.Add(footer);

para = footer.AppendParagraph("My footer.");

Assert.False(footer.IsHeader);
Assert.True(para.IsEndOfHeaderFooter);

Assert.AreEqual(footer, para.ParentStory);
Assert.AreEqual(footer.ParentSection, para.ParentSection);
Assert.AreEqual(footer.ParentSection, header.ParentSection);

doc.Save(ArtifactsDir + "HeaderFooter.Create.docx");

Siehe auch