HeaderFooter

HeaderFooter class

Representa un contenedor para el texto del encabezado o pie de página de una sección.

Para obtener más información, visite elTrabajar con encabezados y pies de página artículo de documentación.

public class HeaderFooter : Story

Constructores

NombreDescripción
HeaderFooter(DocumentBaseHeaderFooterType)Crea un nuevo encabezado o pie de página del tipo especificado.

Propiedades

NombreDescripción
Count { get; }Obtiene el número de hijos inmediatos de este nodo.
CustomNodeId { get; set; }Especifica el identificador de nodo personalizado.
virtual Document { get; }Obtiene el documento al que pertenece este nodo.
FirstChild { get; }Obtiene el primer hijo del nodo.
FirstParagraph { get; }Obtiene el primer párrafo de la historia.
HasChildNodes { get; }Devolucionesverdadero si este nodo tiene nodos secundarios.
HeaderFooterType { get; }Obtiene el tipo de este encabezado/pie de página.
override IsComposite { get; }Devolucionesverdadero ya que este nodo puede tener nodos secundarios.
IsHeader { get; }Verdadero si estoHeaderFooter el objeto es un encabezado.
IsLinkedToPrevious { get; set; }Verdadero si este encabezado o pie de página está vinculado al encabezado o pie de página correspondiente en la sección anterior.
LastChild { get; }Obtiene el último hijo del nodo.
LastParagraph { get; }Obtiene el último párrafo de la historia.
NextSibling { get; }Obtiene el nodo que sigue inmediatamente a este nodo.
override NodeType { get; }DevolucionesHeaderFooter .
Paragraphs { get; }Obtiene una colección de párrafos que son hijos inmediatos de la historia.
ParentNode { get; }Obtiene el padre inmediato de este nodo.
ParentSection { get; }Obtiene la sección principal de esta historia.
PreviousSibling { get; }Obtiene el nodo inmediatamente anterior a este nodo.
Range { get; }Devuelve unRange objeto que representa la parte de un documento contenido en este nodo.
StoryType { get; }Obtiene el tipo de esta historia.
Tables { get; }Obtiene una colección de tablas que son hijas inmediatas de la historia.

Métodos

NombreDescripción
override Accept(DocumentVisitor)Acepta un visitante.
AppendChild(Node)Agrega el nodo especificado al final de la lista de nodos secundarios para este nodo.
AppendParagraph(string)Un método de acceso directo que crea unParagraph objeto con texto opcional y lo agrega al final de este objeto.
Clone(bool)Crea un duplicado del nodo.
CreateNavigator()Crea un navegador que se puede utilizar para atravesar y leer nodos.
DeleteShapes()Elimina todas las formas del texto de esta historia.
GetAncestor(NodeType)Obtiene el primer ancestro del especificadoNodeType .
GetAncestor(Type)Obtiene el primer antepasado del tipo de objeto especificado.
GetChild(NodeType, int, bool)Devuelve un enésimo nodo secundario que coincide con el tipo especificado.
GetChildNodes(NodeType, bool)Devuelve una colección activa de nodos secundarios que coinciden con el tipo especificado.
GetEnumerator()Proporciona soporte para cada iteración de estilo sobre los nodos secundarios de este nodo.
override GetText()Obtiene el texto de este nodo y de todos sus hijos.
IndexOf(Node)Devuelve el índice del nodo secundario especificado en la matriz de nodos secundarios.
InsertAfter(NodeNode)Inserta el nodo especificado inmediatamente después del nodo de referencia especificado.
InsertBefore(NodeNode)Inserta el nodo especificado inmediatamente antes del nodo de referencia especificado.
NextPreOrder(Node)Obtiene el siguiente nodo según el algoritmo transversal del árbol de pedidos anticipados.
PrependChild(Node)Agrega el nodo especificado al principio de la lista de nodos secundarios para este nodo.
PreviousPreOrder(Node)Obtiene el nodo anterior según el algoritmo transversal del árbol de pedidos anticipados.
Remove()Se elimina del padre.
RemoveAllChildren()Elimina todos los nodos secundarios del nodo actual.
RemoveChild(Node)Elimina el nodo secundario especificado.
RemoveSmartTags()Elimina todoSmartTagnodos descendientes del nodo actual.
SelectNodes(string)Selecciona una lista de nodos que coinciden con la expresión XPath.
SelectSingleNode(string)Selecciona el primeroNode que coincide con la expresión XPath.
ToString(SaveFormat)Exporta el contenido del nodo a una cadena en el formato especificado.
ToString(SaveOptions)Exporta el contenido del nodo a una cadena usando las opciones de guardado especificadas.

Observaciones

HeaderFooter puede contenerParagraph yMesa nodos secundarios.

HeaderFooter es un nodo a nivel de sección y sólo puede ser hijo deSection . Sólo puede haber unoHeaderFooter de cadaHeaderFooterType en unSection.

SiSection no tiene unaHeaderFooter de un tipo específico o elHeaderFooterno tiene nodos secundarios, este encabezado/pie de página se considera vinculado a el encabezado/pie de página del mismo tipo de la sección anterior en Microsoft Word.

CuandoHeaderFooter contiene al menos unoParagraph, ya no se considera vinculado al anterior en Microsoft Word.

Ejemplos

Muestra cómo reemplazar texto en el pie de página de un documento.

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");

Muestra cómo eliminar todos los pies de página de un documento.

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

// Recorre cada sección y elimina pies de página de todo tipo.
foreach (Section section in doc.OfType<Section>())
{
    // Hay tres tipos de pie de página y encabezado.
    // 1 - El "primer" encabezado/pie de página, que solo aparece en la primera página de una sección.
    HeaderFooter footer = section.HeadersFooters[HeaderFooterType.FooterFirst];
    footer?.Remove();

    // 2 - El encabezado/pie de página "Principal", que aparece en las páginas impares.
    footer = section.HeadersFooters[HeaderFooterType.FooterPrimary];
    footer?.Remove();

     // 3 - El encabezado/pie de página "Par", que aparece en páginas pares.
    footer = section.HeadersFooters[HeaderFooterType.FooterEven];
    footer?.Remove();

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

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

Muestra cómo crear un encabezado y un pie de página.

Document doc = new Document();

// Crea un encabezado y añádele un párrafo. El texto de ese párrafo
// aparecerá en la parte superior de cada página de esta sección, encima del texto del cuerpo principal.
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);

// Crea un pie de página y añádele un párrafo. El texto de ese párrafo
// aparecerá en la parte inferior de cada página de esta sección, debajo del texto del cuerpo principal.
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");

Ver también