Compartilhar via


Como trabalhar com parágrafos

Este tópico discute a classe Parágrafo do SDK Open XML e como ela se relaciona com o esquema WordprocessingML do Formato de Arquivo XML Aberto.


Parágrafos no WordprocessingML

O texto a seguir da especificação ISO/IEC 29500 apresenta o elemento Open XML WordprocessingML usado para representar um parágrafo em um documento WordprocessingML.

A unidade mais básica de conteúdo em nível de bloco dentro de um documento WordprocessingML, os parágrafos são armazenados usando o <elemento p> . Um parágrafo define uma divisão distinta de conteúdo que começa em uma nova linha. Um parágrafo pode conter três informações: propriedades de parágrafo opcionais, conteúdo embutido (normalmente executado) e um conjunto de IDs de revisão opcionais usadas para comparar o conteúdo de dois documentos.

As propriedades de um parágrafo são especificadas por meio do <elemento pPr>. Alguns exemplos de propriedades de parágrafo são alinhamento, borda, substituição de hifenização, recuo, espaçamento de linha, sombreamento, direção de texto e controle viúva/órfão.

© ISO/IEC29500: 2008.

A tabela a seguir lista as classes de SDK Open XML mais comuns usadas ao trabalhar com parágrafos.

Elemento WordprocessingML Classe SDK Open XML
p Paragraph
Ppr ParagraphProperties
R Executar
T Texto

Classe Parágrafo

A classe Parágrafo do SDK Open XML representa o elemento parágrafo (<p>) definido no esquema Open XML File Format para documentos WordprocessingML, conforme discutido acima. Use o objeto Parágrafo para manipular elementos p> individuais < em um documento WordprocessingML.

Classe ParagraphProperties

No WordprocessingML, as propriedades de um parágrafo são especificadas por meio do elemento pPr> (<propriedades de parágrafo). Alguns exemplos de propriedades de parágrafo são alinhamento, borda, substituição de hifenização, recuo, espaçamento de linha, sombreamento, direção de texto e controle viúva/órfão. A classe OxML SDK ParagraphProperties representa o < elemento pPr>.

Classe Run

Os parágrafos em um documento de processamento de palavras geralmente contêm texto. No esquema formato de arquivo OXML para documentos WordprocessingML, o elemento run (<r>) é fornecido para demarcar uma região de texto. A classe SDK Run do OXML representa o < elemento r>.

Objeto Text

Com o < elemento r>, o elemento de texto (<t>) é o contêiner para o texto que compõe o conteúdo do documento. A classe de texto SDK OXML representa o < elemento t>.


Abrir o exemplo de código do SDK XML

O código a seguir instancia um objetoParágrafo do SDK Open XML e o usa para adicionar texto a um 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));
    }
}

Confira também

Sobre o SDK do Open XML para Office

Como trabalhar com execuções

Como aplicar um estilo a um parágrafo em um documento de processamento de palavras

Como abrir e adicionar texto a um documento de processamento de palavras