Como trabalhar com parágrafos
Este tópico aborda a classe Open XML SDK Paragraph e como se relaciona com o esquema WordprocessingML Open XML File Format.
Parágrafos no WordprocessingML
O texto seguinte da especificação ISO/IEC 29500 introduz o elemento Open XML WordprocessingML utilizado para representar um parágrafo num documento do WordprocessingML.
A unidade mais básica de conteúdo ao nível do bloco num documento do WordprocessingML, os parágrafos são armazenados com o <p>
elemento . Um parágrafo define uma divisão distinta de conteúdo que começa numa nova linha. Um parágrafo pode conter três informações: propriedades de parágrafo opcionais, conteúdo inline (normalmente executado) e um conjunto de IDs de revisão opcionais utilizados para comparar o conteúdo de dois documentos.
As propriedades de um parágrafo são especificadas através do <pPr>
elemento . Alguns exemplos de propriedades de parágrafo são alinhamento, limite, substituição de hifenização, avanço, espaçamento entre linhas, sombreado, direção do texto e controlo viúvo/órfão.
© ISO/IEC 29500: 2016
A tabela seguinte lista as classes de SDK Open XML mais comuns utilizadas ao trabalhar com parágrafos.
WordprocessingML element (Elemento WordprocessingML) | Abrir Classe SDK XML |
---|---|
p | Parágrafo |
pPr | Propriedades de Parágrafo |
r | Executar |
t | Texto |
Classe parágrafo
A classe Open XML SDK Paragraph representa o elemento de parágrafo <p>
definido no esquema Open XML File Format para documentos wordprocessingML, conforme abordado acima.
Utilize o objeto Parágrafo para manipular elementos individuais <p>
num documento do WordprocessingML.
Classe ParagraphProperties
No WordprocessingML, as propriedades de um parágrafo são especificadas através do elemento de propriedades <pPr>
de parágrafo.
Alguns exemplos de propriedades de parágrafo são alinhamento, limite, substituição de hifenização, avanço, espaçamento entre linhas, sombreado, direção do texto e controlo viúvo/órfão. A classe SDK ParagraphProperties OXML representa o <pPr>
elemento .
Executar Classe
Os parágrafos num documento de processamento de palavras contêm mais frequentemente texto. No esquema Formato de Ficheiro OXML para documentos wordprocessingML, o elemento de execução <r>
é fornecido para demarcar uma região de texto. A classe SDK Run OXML representa o <r>
elemento .
Objeto de Texto
Com o <r>
elemento , o elemento de texto <t>
é o contentor do texto que compõe o conteúdo do documento. A classe SDK Text OXML representa o <t>
elemento .
Open XML SDK Code Example
O código seguinte instancia um objetoParágrafo SDK Open XML e, em seguida, utiliza-o para adicionar texto a um documento do WordprocessingML.
// <Snippet0>
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
using System;
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));
}
}
// </Snippet0>
WriteToWordDoc(args[0], args[1]);
Confira também
Acerca do SDK Open XML para o Office
Como: Aplicar um estilo a um parágrafo num documento de processamento de palavras
Como: Abrir e adicionar texto a um documento de processamento de palavras