Share via


Trabajar con ejecuciones

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


Segmentos en WordprocessingML

El siguiente texto de la especificación ISO/IEC 29500 presenta el elemento de segmento de WordprocessingML de Office Open XML.

El siguiente nivel de la jerarquía de documentos [después del párrafo] es el segmento, que define una región de texto con un conjunto de propiedades común. Un segmento se representa por un elemento r, que permite al productor combinar las pausas, los estilos o las propiedades de formato mediante la aplicación de la misma información a todas las partes del segmento.

Al igual que un párrafo, un segmento también puede tener propiedades. Las propiedades de todos los elementos incluidos en un elemento r se controlan mediante un elemento de propiedades de segmento rPr opcional correspondiente, que debe ser el primer elemento secundario del elemento r. A su vez, el elemento rPr es un contenedor de un conjunto de elementos de propiedad que se aplican al resto de los elementos secundarios del elemento r. Los elementos incluidos en el elemento contenedor rPr permiten al consumidor controlar si el texto de los siguientes elementos t estará en negrita, subrayado o visible, por ejemplo. Entre algunos ejemplos de propiedades de segmento se incluyen negrita, borde, estilo de carácter, color, fuente, tamaño de fuente, cursiva, interletraje, deshabilitar revisión ortográfica y gramatical, sombreado, versalitas, tachado, dirección del texto y subrayado.

© ISO/IEC29500: 2008.

En la siguiente tabla se enumeran las clases más comunes de Open XML SDK que se usan al trabajar con segmentos.

Elemento XML Open XML SDK (clase)
p Párrafo
Rpr RunProperties
t Texto

Clase Run

La clase Run del SDKde Open XML representa el elemento run (<r>) definido en el esquema de formato de archivo Open XML para documentos WordprocessingML, como se ha descrito anteriormente. Use un objeto Run para manipular un elemento r> individual < en un documento WordprocessingML.

Clase RunProperties

En WordprocessingML, las propiedades de un elemento run se especifican mediante el elemento run properties (<rPr>). Entre algunos ejemplos de propiedades de segmento se incluyen negrita, borde, estilo de carácter, color, fuente, tamaño de fuente, cursiva, interletraje, deshabilitar revisión ortográfica y gramatical, sombreado, versalitas, tachado, dirección del texto y subrayado. Use un objeto RunProperties para establecer las propiedades de una ejecución en un documento WordprocessingML.

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>. Use un objeto Text para colocar texto en un documento WordprocessingML.


Ejemplo de código de Open XML SDK 2.0

Mediante el siguiente código se agrega texto a la superficie de documento principal del documento WordprocessingML especificado. Un objeto Run delimita una región de texto dentro de un párrafo y, a continuación, se usa un objeto RunProperties para aplicar formato de negrita al segmento.

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

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))
    {
        // 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 new text.
        Paragraph para = body.AppendChild(new Paragraph());
        Run run = para.AppendChild(new Run());

        // Apply bold formatting to the run.
        RunProperties runProperties = run.AppendChild(new RunProperties(new Bold()));
        run.AppendChild(new Text(txt));
    }
}

Vea también

Acerca del SDK de Open XML para Office

Trabajar con párrafos

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