Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este tópico discute a estrutura básica de um documento WordprocessingML e analisa importantes classes do Open XML SDK que são usadas com mais frequência para criar documentos WordprocessingML .
A estrutura básica do documento de um documento WordProcessingML consiste nos elementos and<body>, seguidos por um ou mais elementos de nível de <document> bloco, como <p>, que representa um parágrafo. Um parágrafo contém um ou mais <r> elementos. O <r> significa executar, que é uma região do texto com um conjunto comum de propriedades, como formatação. Uma execução contém um ou mais <t> elementos. O <t> elemento contém um intervalo de texto.
Partes importantes de WordprocessingML
A API do SDK de XML Aberto fornece classes fortemente tipadas no namespace DocumentFormat.OpenXML.WordprocessingML que correspondem a elementos WordprocessingML .
A tabela a seguir lista alguns elementos importantes de WordprocessingML , a parte do pacote de documentos WordprocessingML à qual o elemento corresponde (quando aplicável) e a classe gerenciada que representa o elemento na API do SDK de XML Aberto.
| Parte do Pacote | Elemento WordprocessingML | Classe Open XML SDK | Descrição |
|---|---|---|---|
| Documento principal | document | Document | O elemento raiz para a parte do documento principal. |
| Comments | comentários | Comments | O elemento raiz da parte de comentários. |
| Configurações do documento | settings | Settings | O elemento raiz da parte de configurações do documento. |
| Notas de fim | Notas de fim | Endnotes | O elemento raiz para a parte das notas de fim. |
| Rodapé | FTR | Footer | O elemento raiz da parte do rodapé. |
| Notas de rodapé | Notas de rodapé | Footnotes | O elemento raiz para a parte das notas de rodapé. |
| Documento de Glossário | glossárioDocumento | GlossaryDocument | O elemento raiz da parte do documento do glossário. |
| Cabeçalho | HDR | Header | O elemento raiz da parte do cabeçalho. |
| Definições de estilo | Estilos | Styles | O elemento raiz de uma parte de Definições de estilo. |
Cenário mínimo de documento
Um documento WordprocessingML é organizado em torno do conceito de histórias. Uma história é uma região de conteúdo em um documento WordprocessingML . As histórias do WordprocessingML incluem:
comment
nota final
rodapé
nota de rodapé
quadro, documento de glossário
de cabeçalho
História Principal
subdocumento
caixa de texto
Nem todas as histórias devem estar presentes em um documento WordprocessingML válido. O documento WordprocessingML mais simples e válido requer apenas uma única história: a história principal do documento. No WordprocessingML, a história do documento principal é representada pela parte principal do documento. No mínimo, para criar um documento WordprocessingML válido usando código, adicione uma parte principal do documento ao documento.
As informações a seguir do ISO/IEC 29500 introduzem os elementos WordprocessingML necessários na parte principal do documento para completar o cenário mínimo do documento.
A história principal do documento WordprocessingML mais simples consiste nos seguintes elementos XML:
document— O elemento raiz da parte principal do documento de um WordprocessingML, que define a história principal do documento.body- O contêiner para a coleção de estruturas de nível de bloco que compõem o andar principal.p— Um parágrafo.r— Uma corrida.t— Um intervalo de texto.
© ISO/IEC 29500: 2016
Exemplo de código do Open XML SDK
O código a seguir usa o SDK do Open XML para criar um documento WordprocessingML simples que contém o texto passado como o segundo parâmetro
using DocumentFormat.OpenXml.Packaging;
using DocumentFormat.OpenXml.Wordprocessing;
static void CreateWordDoc(string filepath, string msg)
{
using (WordprocessingDocument doc = WordprocessingDocument.Create(filepath, DocumentFormat.OpenXml.WordprocessingDocumentType.Document))
{
// Add a main document part.
MainDocumentPart mainPart = doc.AddMainDocumentPart();
// Create the document structure and add some text.
mainPart.Document = new Document();
Body body = mainPart.Document.AppendChild(new Body());
Paragraph para = body.AppendChild(new Paragraph());
Run run = para.AppendChild(new Run());
// String msg contains the text from the msg parameter"
run.AppendChild(new Text(msg));
}
}
WordprocessingML gerado
Depois de executar o código Open XML SDK na seção anterior para gerar um documento, você pode explorar o conteúdo do pacote .zip para exibir o código WordprocessingML XML. Para exibir o pacote .zip, renomeie a extensão no documento mínimo de .docx para .zip. O pacote .zip contém as partes que compõem o documento. Nesse caso, como o código criou um documento WordprocessingML mínimo, há apenas uma única parte: a parte principal do documento. A figura a seguir mostra a estrutura sob a pasta de palavras do pacote de .zip para um documento mínimo que contém uma única linha de texto. Espaço reservado para arteO arquivo document.xml corresponde à parte principal do documento WordprocessingML e é essa parte que contém o conteúdo do corpo principal do documento. O código XML a seguir é gerado no arquivo document.xml quando você executa o código Open XML SDK na seção anterior.
<?xml version="1.0" encoding="utf-8"?>
<w:document xmlns:w="http://schemas.openxmlformats.org/wordprocessingml/2006/main">
<w:body>
<w:p>
<w:r>
<w:t>The text passed as the second parameter goes here</w:t>
</w:r>
</w:p>
</w:body>
</w:document>
Cenário típico de documento
Um documento típico não será um documento mínimo em branco. Um documento típico pode conter comentários, cabeçalhos, rodapés, notas de rodapé e notas de fim, por exemplo. Cada uma dessas partes adicionais está contida no pacote zip do documento de processamento de texto.
A figura a seguir mostra muitas das partes que você encontraria em um documento típico.
Figura 1. Estrutura típica do documento