Pesquisar

Gerando documentos do Office com OpenXml

 

Para quem precisa gerar documentos do Office como um documento, uma planilha ou até mesmo uma apresentação do Power Point, a Microsoft disponibiliza o padrão OpenXml, este é o novo padrão dos documentos como docx, xlsx, pptx.

Você pode baixar o sdk, ou um pacote mais completo que possui uma ferramenta que permite decompilar o seu docx, ou seja ele gera código .Net que permite você criar o documento que você abriu.

http://www.microsoft.com/en-us/download/details.aspx?id=5124

Veja na imagem abaixo que eu abri um documento, e na parte da direita ele gera o código em c# que corresponde ao documento.

OpenXml sdk

Podemos também usar também a dll DocumentFormat.OpenXml.dll, que é instalada em C:\Program Files\Open XML SDK\V2.0\lib, para podermos criar qualquer tipo de documento em nosso código .Net sem precisarmos ter o word instalado.

Vamos a um simples exemplo de como criar um docx.

using (WordprocessingDocument documento = WordprocessingDocument.Create(@"C:\Users\Danimar\Desktop\primeiro.docx", WordprocessingDocumentType.Document))
{
MainDocumentPart mainPart = documento.AddMainDocumentPart();
mainPart.Document = new Document();
Body body = new Body();
for (int i = 0; i < 10; i++)
{
Paragraph paragraph = new Paragraph();
Run run_paragraph = new Run();
Text text_paragraph = new Text("Escreve vários paragrafos no documento");
run_paragraph.Append(text_paragraph);
paragraph.Append(run_paragraph);
body.Append(paragraph);
}
mainPart.Document.Append(body);
mainPart.Document.Save();
}

Nenhum comentário: