Share via


Trabajar con párrafos

En este tema se describe la clase Paragraph del SDK de Open XML y cómo se relaciona con el esquema WordprocessingML de formato de archivo Open XML.


Párrafos de WordprocessingML

El siguiente texto de la especificación ISO/IEC 29500 presenta el elemento WordprocessingML de Office Open XML que se usa para representar un párrafo en un documento WordprocessingML.

La unidad más básica de contenido de nivel de bloque dentro de un documento WordprocessingML, los párrafos se almacenan mediante el <elemento p> . Un párrafo define una división clara de contenido que comienza en una línea nueva. Un párrafo puede contener tres datos: propiedades opcionales de párrafo, contenido alineado (normalmente, segmentos) y un conjunto de identificadores de revisión opcionales que se usan para comparar el contenido de dos documentos.

Las propiedades de un párrafo se especifican a través del <elemento pPr>. Algunos ejemplos de propiedades de párrafo son alineación, borde, invalidación de guiones, sangría, interlineado, sombreado, dirección del texto y control de líneas viudas y huérfanas.

© ISO/IEC29500: 2008.

En la siguiente tabla se enumeran las clases de Open XML SDK más comunes que se usan cuando se trabaja con párrafos.

Elemento WordprocessingML Open XML SDK (clase)
p Párrafo
Ppr ParagraphProperties
r Ejecutar
t Texto

Clase Paragraph

La clase Paragraph del SDK de Open XML representa el elemento de párrafo (<p>) definido en el esquema de formato de archivo Open XML para documentos WordprocessingML, como se ha explicado anteriormente. Use el objeto Paragraph para manipular elementos p> individuales < en un documento WordprocessingML.

Clase ParagraphProperties

En WordprocessingML, las propiedades de un párrafo se especifican a través del elemento de propiedades de párrafo (<pPr>). Algunos ejemplos de propiedades de párrafo son alineación, borde, invalidación de guiones, sangría, interlineado, sombreado, dirección del texto y control de líneas viudas y huérfanas. La clase ParagraphProperties del SDK de OXML representa el < elemento pPr>.

Clase Run

Los párrafos de un documento de procesamiento de texto, generalmente, contienen texto. En el esquema de formato de archivo OXML para documentos WordprocessingML, se proporciona el elemento run (<r>) para demarcar una región de texto. La clase Run del SDK de OXML representa el < elemento r>.

Objeto de texto

Con el < elemento r>, el elemento text (<t>) es el contenedor del texto que constituye el contenido del documento. La clase Text del SDK de OXML representa el < elemento t>.


Ejemplo de código de Open XML SDK 2.0

El código siguiente crea una instancia de un objetoParagraph del SDK de Open XML y, a continuación, lo usa para agregar texto a un documento WordprocessingML.

using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
using System;

WriteToWordDoc(args[0], args[1]);

static void WriteToWordDoc(string filepath, string txt)
{
    // Open a WordprocessingDocument for editing using the filepath.
    using (WordprocessingDocument wordprocessingDocument = WordprocessingDocument.Open(filepath, true))
    {
        if (wordprocessingDocument is null)
        {
            throw new ArgumentNullException(nameof(wordprocessingDocument));
        }
        // Assign a reference to the existing document body.
        MainDocumentPart mainDocumentPart = wordprocessingDocument.MainDocumentPart ?? wordprocessingDocument.AddMainDocumentPart();
        mainDocumentPart.Document ??= new Document();
        Body body = mainDocumentPart.Document.Body ?? mainDocumentPart.Document.AppendChild(new Body());

        // Add a paragraph with some text.
        Paragraph para = body.AppendChild(new Paragraph());
        Run run = para.AppendChild(new Run());
        run.AppendChild(new Text(txt));
    }
}

Vea también

Acerca del SDK de Open XML para Office

Trabajar con ejecuciones

Cómo: aplicar un estilo a un párrafo de un documento de procesamiento de texto

Procedimiento para abrir un documento de procesamiento de texto y agregarle texto