InlineStory

InlineStory class

Clase base para nodos de nivel en línea que pueden contener párrafos y tablas.

Para obtener más información, visite elNiveles lógicos de nodos en un documento artículo de documentación.

public abstract class InlineStory : CompositeNode

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.
Font { get; }Proporciona acceso al formato de fuente del carácter ancla de este objeto.
HasChildNodes { get; }Devolucionesverdadero si este nodo tiene nodos secundarios.
override IsComposite { get; }Devolucionesverdadero ya que este nodo puede tener nodos secundarios.
IsDeleteRevision { get; }Devuelve verdadero si este objeto se eliminó en Microsoft Word mientras el seguimiento de cambios estaba habilitado.
IsInsertRevision { get; }Devuelve verdadero si este objeto se insertó en Microsoft Word mientras el seguimiento de cambios estaba habilitado.
IsMoveFromRevision { get; }Devolucionesverdadero si este objeto se movió (eliminó) en Microsoft Word mientras el seguimiento de cambios estaba habilitado.
IsMoveToRevision { get; }Devolucionesverdadero si este objeto se movió (insertó) en Microsoft Word mientras el seguimiento de cambios estaba habilitado.
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.
abstract NodeType { get; }Obtiene el tipo de este nodo.
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.
ParentParagraph { get; }Recupera el padreParagraph de este nodo.
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.
abstract StoryType { get; }Devuelve el tipo de historia.
Tables { get; }Obtiene una colección de tablas que son hijas inmediatas de la historia.

Métodos

NombreDescripción
abstract Accept(DocumentVisitor)Acepta un visitante.
AppendChild(Node)Agrega el nodo especificado al final de la lista de nodos secundarios para este nodo.
Clone(bool)Crea un duplicado del nodo.
CreateNavigator()Crea un navegador que se puede utilizar para atravesar y leer nodos.
EnsureMinimum()Si el último elemento secundario no es un párrafo, crea y agrega un párrafo vacío.
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

InlineStory es un contenedor para nodos a nivel de bloqueParagraph yTable.

Las clases que se derivan deInlineStory son nodos de nivel en línea que pueden contener su propio texto (párrafos y tablas). Por ejemplo, unComment El nodo contiene el texto de un comentario y unFootnote contiene el texto de una nota al pie.

Ejemplos

Muestra cómo agregar un comentario a un párrafo.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Write("Hello world!");

Comment comment = new Comment(doc, "John Doe", "JD", DateTime.Today);
builder.CurrentParagraph.AppendChild(comment);
builder.MoveTo(comment.AppendChild(new Paragraph(doc)));
builder.Write("Comment text.");

Assert.AreEqual(DateTime.Today, comment.DateTime);

 // En Microsoft Word, podemos hacer clic derecho en este comentario en el cuerpo del documento para editarlo o responderle.
doc.Save(ArtifactsDir + "InlineStory.AddComment.docx");

Muestra cómo insertar y personalizar notas al pie.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// Agrega texto y haz referencia a él con una nota al pie. Esta nota al pie colocará una pequeña referencia en superíndice.
// marque después del texto al que hace referencia y cree una entrada debajo del texto del cuerpo principal en la parte inferior de la página.
// Esta entrada contendrá la marca de referencia de la nota al pie y el texto de referencia,
// que pasaremos al método "InsertFootnote" del generador de documentos.
builder.Write("Main body text.");
Footnote footnote = builder.InsertFootnote(FootnoteType.Footnote, "Footnote text.");

// Si esta propiedad se establece en "verdadero", entonces la marca de referencia de nuestra nota al pie
// será su índice entre todas las notas a pie de página de la sección.
// Esta es la primera nota a pie de página, por lo que la marca de referencia será "1".
Assert.True(footnote.IsAuto);

 // Podemos mover el generador de documentos dentro de la nota al pie para editar su texto de referencia.
builder.MoveTo(footnote.FirstParagraph);
builder.Write(" More text added by a DocumentBuilder.");
builder.MoveToDocumentEnd();

Assert.AreEqual("\u0002 Footnote text. More text added by a DocumentBuilder.", footnote.GetText().Trim());

builder.Write(" More main body text.");
footnote = builder.InsertFootnote(FootnoteType.Footnote, "Footnote text.");

// Podemos establecer una marca de referencia personalizada que usará la nota al pie en lugar de su número de índice.
footnote.ReferenceMark = "RefMark";

Assert.False(footnote.IsAuto);

// Un marcador con el indicador "IsAuto" establecido en verdadero seguirá mostrando su índice real
// incluso si los marcadores anteriores muestran marcas de referencia personalizadas, la marca de referencia de este marcador será un "3".
builder.Write(" More main body text.");
footnote = builder.InsertFootnote(FootnoteType.Footnote, "Footnote text.");

Assert.True(footnote.IsAuto);

doc.Save(ArtifactsDir + "InlineStory.AddFootnote.docx");

Ver también