Exemple #1
0
        private static MemoryStream CreateWordFile(List <Topic> topics)
        {
            MemoryStream ms = new MemoryStream();

            // Create a document in memory:
            using (DocX doc = DocX.Create("wordFileName.docx"))
            {
                if (!string.IsNullOrEmpty(_wordTemplatePath))
                {
                    doc.ApplyTemplate(_wordTemplatePath);
                }

                int i = 1;

                //Sort topics by date
                List <Topic> sortedTopics = topics.OrderBy(x => x.Markup.Topic.Description).ToList();

                foreach (Topic topic in sortedTopics)
                {
                    //Add note to the report
                    AddTopicToWord(topic, doc);
                    //(sender as BackgroundWorker).ReportProgress(i);
                    i++;
                }

                doc.SaveAs(ms);
            }

            return(ms);
        }
Exemple #2
0
        public static void CreateDoc(string filePath)
        {
            _filePath = filePath;

            _doc = DocX.Create(filePath);
            _doc.ApplyTemplate(@"C:\Projects\ExportPreso\ExportPreso\WordTemplate\_template.dotx");
        }
Exemple #3
0
        private void button1_Click(object sender, EventArgs e)
        {
            //using (DocX document = DocX.Create(@"C:\GitHub\Test.docx"))

            //{

            //var doc

            /*
             * foreach (var field in document.CustomProperties)
             * {
             *  if (field.Value.Name.Contains("Fatos"))
             *  {
             *      document.InsertParagraph("sim sim sim");
             *  }
             *
             * }
             */


            var  filename = @"C:\GitHub\Test.docx";
            DocX document = DocX.Create(filename);

            document.ApplyTemplate(@"C:\GitHub\PeticaoModelo.docx");
            Paragraph p = document.InsertParagraph("alo Hordes");

            if (p.Text.Contains("ordes"))
            {
                Paragraph i = document.InsertParagraph("n n");
            }
            document.InsertParagraph("sim sim");


            document.Save();
            Process.Start("WINWORD.EXE", filename);
            //document.Tex/t.Select();



            // }
        }
Exemple #4
0
        /// <summary>
        /// Add a template to a document.
        /// </summary>
        public static void ApplyTemplate()
        {
            Console.WriteLine("\tApplyTemplate()");

            // Create a new document.
            using (DocX document = DocX.Create(DocumentSample.DocumentSampleOutputDirectory + @"ApplyTemplate.docx"))
            {
                // The path to a template document,
                var templatePath = DocumentSample.DocumentSampleResourcesDirectory + @"Template.docx";

                // Apply a template to the document based on a path.
                document.ApplyTemplate(templatePath);

                // Add a paragraph at the end of the template.
                document.InsertParagraph("This paragraph is not part of the template.").FontSize(15d).UnderlineStyle(UnderlineStyle.singleLine).SpacingBefore(50d);

                // Save this document to disk.
                document.Save();
                Console.WriteLine("\tCreated: ApplyTemplate.docx\n");
            }
        }
Exemple #5
0
        public void gerarDocumento(string documento)
        {
            //identificar titulos
            #region
            //identificar titulo1 e marcar como [Ttulo1]
            var peticaoComTitulos = Regex.Replace(documento, @".*\r\n-{3,}\r\n-{3,}", "[Ttulo1]$0");
            //excluir marcador de titulo1
            peticaoComTitulos = Regex.Replace(peticaoComTitulos, @"\r\n-{3,}\r\n-{3,}", "");

            //identificar titulo2--- e marcar como [Ttulo2]
            peticaoComTitulos = Regex.Replace(peticaoComTitulos, @".*\r\n-{3,}", "[Ttulo2]$0");
            //excluir marcador de Titulo2
            peticaoComTitulos = Regex.Replace(peticaoComTitulos, @"\r\n-{3,}", "");



            #endregion

            // split petição por parágrafos
            #region
            var    docLines = peticaoComTitulos.Split(new string[] { "\r\n" }, System.StringSplitOptions.None);
            string filename = @"C:\GitHub\Test2.docx";
            #endregion

            //criação do documento
            //using (DocX document = DocX.Create(@"C:\GitHub\Test2.docx"))
            using (DocX document = DocX.Create(@"C:\GitHub\Test2.docx"))
            {
                document.ApplyTemplate(@"C:\GitHub\PeticaoModelo4.docx");


                //remover configurações do tamplate no documento
                foreach (var paragraph in document.Paragraphs)
                {
                    paragraph.Remove(false);
                }

                //atribuir estilo de acordo com palavras chaves
                foreach (var line in docLines)
                {
                    if (line.Contains("[endereçamento]"))
                    {
                        document.InsertParagraph(line).StyleName = "Endereamento";
                    }

                    else if (line.IndexOf("[qualificação]") > -1)
                    {
                        document.InsertParagraph(line).StyleName = "CorpoDeTexto0";
                    }

                    else if (line.Contains("[peça]"))
                    {
                        document.InsertParagraph(line).StyleName = "NomeDaPea";
                    }

                    else if (line.Contains("[Ttulo1]") || line.Contains("[fatos]") || line.Contains("[direito]") || line.Contains("[pedido]"))
                    {
                        document.InsertParagraph(line).StyleName = "Ttulo1";
                    }

                    else if (line.Contains("[Ttulo2]"))
                    {
                        document.InsertParagraph(line).StyleName = "Ttulo2";
                    }

                    else if (line.Contains("[citação]"))
                    {
                        document.InsertParagraph(line).StyleName = "Citacao";
                    }

                    else if (line.Contains("[data]"))
                    {
                        document.InsertParagraph(DateTime.Today.ToString("'Goiânia, 'dd 'de' MMMM 'de' yyyy")).StyleName = "data";
                    }

                    else
                    {
                        document.InsertParagraph(line).StyleName = "CorpoDeTexto0";
                    }
                }

                //inserir negritos e sublinhados
                #region
                var negritos = new Regex(@"\*\*.*?\*\*").Matches(document.Text);
                foreach (Match negrito in negritos)
                {
                    document.ReplaceText(negrito.Value, negrito.Value, false, RegexOptions.IgnoreCase, new Formatting()
                    {
                        Bold = true
                    });
                }

                var sublinhados = new Regex(@"__.*?__").Matches(document.Text);
                foreach (Match sublinhado in sublinhados)
                {
                    document.ReplaceText(sublinhado.Value, sublinhado.Value, false, RegexOptions.IgnoreCase, new Formatting()
                    {
                        UnderlineStyle = UnderlineStyle.singleLine
                    });
                }
                #endregion

                //inserir data e assinatura

                var dataExtenso = DateTime.Today.ToString("'Goiânia, 'dd 'de' MMMM 'de' yyyy");



                //apagar marcações
                #region
                document.ReplaceText("[Ttulo1]", "");
                document.ReplaceText("[Ttulo2]", "");
                document.ReplaceText("**", "");
                document.ReplaceText("__", "");
                document.ReplaceText("[endereçamento]", "");
                document.ReplaceText("[qualificação]", "");
                document.ReplaceText("[peça]", "");
                document.ReplaceText("[fatos]", "Fatos");
                document.ReplaceText("[direito]", "Direito");
                document.ReplaceText("[pedido]", "Pedido");
                document.ReplaceText("[citação]", "");
                #endregion


                foreach (var paragraph in document.Paragraphs)
                {
                    document.InsertParagraph(paragraph.StyleName);
                }

                document.Save();
                Process.Start("WINWORD.EXE", filename);
            }
        }
Exemple #6
0
        private void btnGerarDocX4_Click(object sender, EventArgs e)
        {
            //document.InsertParagraph("**" + cliente1.Nome + "**").Append(cliente1.QualificacaoComNomeVazio_).StyleName = "CorpoDeTexto" ;
            //string peticao = "[endereçamento]\n[qualificação], vêm a digna presença de vossa excelecência propor:\n[nome_peça]\nFatos\nIsso é um fato\nIsso também é um fato";
            StringBuilder peticao = new StringBuilder();

            peticao.AppendLine("[endereçamento]");
            peticao.AppendLine("[qualificação], vêm a digna presença de vossa excelecência propor:");
            peticao.AppendLine("[peça]");
            peticao.AppendLine("[fatos]");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("[direito]");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("[pedido]");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");

            //identificar titulo e inserir no rimeiro ragrafo


            var    docLines = peticao.ToString().Split(new string[] { "\r\n" }, System.StringSplitOptions.None);
            string filename = @"C:\GitHub\Test2.docx";

            using (DocX document = DocX.Create(@"C:\GitHub\Test2.docx"))
            {
                document.ApplyTemplate(@"C:\GitHub\PeticaoModelo3.docx");
                //lavras chave
                foreach (var line in docLines)
                {
                    if (line.Contains("[endereçamento]"))
                    {
                        document.InsertParagraph(line).StyleName = "Endereamento";
                    }

                    else if (line.IndexOf("[qualificação]") > -1)
                    {
                        document.InsertParagraph(line).StyleName = "CorpoDeTexto0";
                    }

                    else if (line.Contains("[peça]"))
                    {
                        document.InsertParagraph(line).StyleName = "NomeDaPea";
                    }

                    else if (line.Contains("[fatos]") || line.Contains("[direito]") || line.Contains("[pedido]"))
                    {
                        document.InsertParagraph(line).StyleName = "Ttulo1";
                    }

                    else
                    {
                        document.InsertParagraph(line).StyleName = "CorpoDeTexto0";
                    }
                }

                //substituir palavras chave
                string qualificacao  = string.Concat("**", cliente1.Nome, "**", " ", cliente1.QualificacaoComNomeVazio_);
                string enderecamento = "Excelentíssimo Senhor Doutor Juiz de Direito da Comarca de Goiania-GO";
                string nomePeca      = "Ação Ordinária de Pensão por MORTE pedido";

                document.ReplaceText("[endereçamento]", enderecamento.ToUpper());
                document.ReplaceText("[qualificação]", qualificacao);
                document.ReplaceText("[peça]", nomePeca.ToUpper());
                document.ReplaceText("[fatos]", "Fatos");
                document.ReplaceText("[direito]", "Direito");
                document.ReplaceText("[pedido]", "Pedidos");

                var fPadrao  = new Formatting();
                var fPadrao1 = new Formatting()
                {
                    Size = 14
                };
                //fPadrao.Size = 14;
                //fPadrao.UnderlineStyle = UnderlineStyle.singleLine;



                //document.ReplaceText("(MOR).*", "ABC",false, RegexOptions.IgnoreCase, null, fPadrao);
                //string s = document.Text;
                //string[] array = new string[];
                string padraoRegex = "/*/*.*/*/*";
                var    negritos    = new List <string>();

                document.ReplaceText("morte", "ABC", false, RegexOptions.IgnoreCase, new Formatting()
                {
                    Size = 10, Bold = true
                });



                foreach (var paragrafo in document.Paragraphs)
                {
                    document.InsertParagraph(paragrafo.StyleName);
                }


                document.Save();
                Process.Start("WINWORD.EXE", filename);
            }
        }
Exemple #7
0
        private void btnGerarDocX5_Click(object sender, EventArgs e)
        {
            #region
            StringBuilder peticao = new StringBuilder();
            peticao.AppendLine("[endereçamento]");
            peticao.AppendLine("[qualificação], vêm a digna presença de vossa excelecência propor:");
            peticao.AppendLine("[peça]");
            peticao.AppendLine("[fatos]");
            peticao.AppendLine("SubTitulo1\n------");
            peticao.AppendLine("Isso é um fato, **isso é um negrito**, isso é um fato, isso é um fato, __isso é um sublinhado__, isso é um fato, isso é um fato, isso é um fato, isso é um fato");

            peticao.AppendLine("SubTitulo1\n------");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("SubTitulo2\n-------");
            peticao.AppendLine("Isso é um fato, **isso é um negrito**, isso é um fato, isso é um fato, __isso é um sublinhado__, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("[direito]");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("[pedido]");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            peticao.AppendLine("Isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato, isso é um fato");
            #endregion

            //identificar titulos
            #region
            //identificar titulo1--- e marcar como [Ttulo1]
            var peticaoComTitulos = Regex.Replace(peticao.ToString(), @"(.*)\n-{3,}\n-{3,}", "[Ttulo1]$0");

            //identificar titulo2--- e marcar como [Ttulo2]
            peticaoComTitulos = Regex.Replace(peticao.ToString(), @".*\n-{3,}", "[Ttulo2]$0");

            //remover marcação
            peticaoComTitulos = Regex.Replace(peticaoComTitulos, @"\n-{3,}", "");
            #endregion

            // split petição por parágrafos
            #region
            var    docLines = peticaoComTitulos.Split(new string[] { "\r\n" }, System.StringSplitOptions.None);
            string filename = @"C:\GitHub\Test2.docx";
            #endregion

            //criação do documento
            using (DocX document = DocX.Create(@"C:\GitHub\Test2.docx"))
            {
                document.ApplyTemplate(@"C:\GitHub\PeticaoModelo4.docx");

                //remover configurações do tamplate no documento
                foreach (var paragraph in document.Paragraphs)
                {
                    paragraph.Remove(false);
                }

                //atribuir estilo de acordo com palavras chaves
                foreach (var line in docLines)
                {
                    if (line.Contains("[endereçamento]"))
                    {
                        document.InsertParagraph(line).StyleName = "Endereamento";
                    }

                    else if (line.IndexOf("[qualificação]") > -1)
                    {
                        document.InsertParagraph(line).StyleName = "CorpoDeTexto0";
                    }

                    else if (line.Contains("[peça]"))
                    {
                        document.InsertParagraph(line).StyleName = "NomeDaPea";
                    }

                    else if (line.Contains("[fatos]") || line.Contains("[direito]") || line.Contains("[pedido]"))
                    {
                        document.InsertParagraph(line).StyleName = "Ttulo1";
                    }
                    else if (line.Contains("[Ttulo2]"))
                    {
                        document.InsertParagraph(line).StyleName = "Ttulo2";
                    }

                    else
                    {
                        document.InsertParagraph(line).StyleName = "CorpoDeTexto0";
                    }
                }

                //substituir palavras chave
                #region
                string qualificacao  = string.Concat("**", cliente1.Nome, "**", " ", cliente1.QualificacaoComNomeVazio_);
                string enderecamento = "Excelentíssimo Senhor Doutor Juiz de Direito da Comarca de Goiania-GO";
                string nomePeca      = "Ação Ordinária de Pensão por MORTE pedido";

                document.ReplaceText("[endereçamento]", enderecamento.ToUpper());
                document.ReplaceText("[qualificação]", qualificacao);
                document.ReplaceText("[peça]", nomePeca.ToUpper());
                document.ReplaceText("[fatos]", "Fatos");
                document.ReplaceText("[direito]", "Direito");
                document.ReplaceText("[pedido]", "Pedidos");
                #endregion

                //inserir negritos e sublinhados
                #region
                var negritos = new Regex(@"\*\*.*?\*\*").Matches(document.Text);
                foreach (Match negrito in negritos)
                {
                    document.ReplaceText(negrito.Value, negrito.Value, false, RegexOptions.IgnoreCase, new Formatting()
                    {
                        Bold = true
                    });
                }

                var sublinhados = new Regex(@"__.*?__").Matches(document.Text);
                foreach (Match sublinhado in sublinhados)
                {
                    document.ReplaceText(sublinhado.Value, sublinhado.Value, false, RegexOptions.IgnoreCase, new Formatting()
                    {
                        UnderlineStyle = UnderlineStyle.singleLine
                    });
                }
                #endregion

                //apagar marcações
                #region
                document.ReplaceText("[Ttulo2]", "");
                document.ReplaceText("**", "");
                document.ReplaceText("__", "");
                #endregion



                document.Save();
                Process.Start("WINWORD.EXE", filename);
            }
        }
Exemple #8
0
        private void btnGerarDocx2_Click(object sender, EventArgs e)
        {
            var cliente1 = new Cliente
            {
                Nome          = "Bruno Valadares do Nascimento",
                CPF           = "011.916.601-17",
                RG            = "2798",
                Nacionalidade = "brasileiro",
                EstadoCivil   = EstadoCivil.solteiro,
                Sexo          = Sexo.masculino,
                Logradouro    = "Rua 59-A",
                Numero        = 547,
                Setor         = "Aeroporto",
                Cidade        = "Goinaia",
                Estado        = "GO"
            };

            string fontPadrao      = "Courier New";
            int    sizePadrao      = 12;
            var    firstLinePadrao = 6.0f;

            var cliente2 = new Cliente
            {
                Nome          = "Mario do Carmo",
                CPF           = "011.916.601-17",
                RG            = "2798",
                Nacionalidade = "brasileiro",
                EstadoCivil   = EstadoCivil.solteiro,
                Sexo          = Sexo.masculino,
                Logradouro    = "Rua 59-A",
                Numero        = 547,
                Setor         = "Aeroporto",
                Cidade        = "Goinaia",
                Estado        = "GO"
            };

            clientes.Add(cliente1);
            clientes.Add(cliente2);
            clientes.Add(cliente2);
            clientes.Add(cliente2);

            var fPadrao = new Formatting();

            fPadrao.Size       = 12;
            fPadrao.FontFamily = new Xceed.Words.NET.Font("Arial");
            ;

            var fPadraoNegrito = new Formatting();

            fPadraoNegrito.Size       = 12;
            fPadraoNegrito.FontFamily = new Xceed.Words.NET.Font("Arial");


            var filename = @"C:\GitHub\Test2.docx";

            using (DocX document = DocX.Create(filename))
            {
                document.ApplyTemplate(@"C:\GitHub\PeticaoModelo3.docx");
                Paragraph p1 = document.InsertParagraph();
                //document.ReplaceText()

                //endereçamento
                var padrao = new Formatting();
                padrao.FontFamily = new Xceed.Words.NET.Font("Arial");
                padrao.Size       = 12;



                var padraoNegrito = new Formatting();
                padraoNegrito.FontFamily = new Xceed.Words.NET.Font("Arial");
                padraoNegrito.Size       = 12;
                padraoNegrito.Bold       = true;// Xceed.Words.NET.Formatting.;



                //headLineFormat.Position = 12;



                string enderecarPara = "JUIZ(A) FEDERAL DA VARA DO JUIZADO ESPECIAL FEDERAL DA SEÇÃO JUDICIÁRIA DO estado de Goiás";
                string enderecamento = ("EXCELENTÍSSIMO(A) SENHOR(A) " + enderecarPara).ToUpper();
                //p1.Append(enderecamento).Font(fontPadrao).FontSize(tamanhoPadrao).Bold().SpacingAfter(150);7
                document.InsertParagraph(enderecamento, false, padraoNegrito).SpacingAfter(150);
                //document.InsertParagraph(enderecamento).FontSize(12).Font("Arial").Bold().SpacingAfter(150).Alignment = Alignment.right;

                if (p1.StyleName.Equals("jk"))
                {
                    p1.StyleName = "";
                    var estilo = p1.StyleName;
                }



                //qualificação
                string    qualificacao  = cliente1.Qualificacao_;
                Paragraph pQUalificacao = document.InsertParagraph();
                pQUalificacao.Alignment = Alignment.both;
                //pQUalificacao.InsertTabStopPosition(Alignment.left, 160f, TabStopPositionLeader.none);

                pQUalificacao.IndentationFirstLine = firstLinePadrao;
                //pQUalificacao.InsertTabStopPosition(Alignment.right, 432f, TabStopPositionLeader.none);
                //pQUalificacao.Append("\t");
                pQUalificacao.Append(cliente1.Nome).Font(fontPadrao).FontSize(sizePadrao).Bold();
                pQUalificacao.Append(cliente1.QualificacaoComNomeVazio_).Font(fontPadrao).FontSize(sizePadrao);

                //Parte principal
                string txt = ", por seu advogado que esta subscreve, vem à presença de Vossa Excelência, com fulcro na Legislação Pátria, propor a presente:";
                pQUalificacao.Append(txt).Font(fontPadrao).FontSize(sizePadrao);
                pQUalificacao.SetLineSpacing(LineSpacingType.Line, 1.5f);


                //ação
                txt = "ação de execução de título extrajudicial".ToUpper();
                Paragraph pAcao = document.InsertParagraph();
                pAcao.Append(txt).Font(fontPadrao).FontSize(sizePadrao).Bold().SpacingBefore(30).SpacingAfter(30);


                //em face de
                //var p = document.InsertParagraph();
                //p.Append("em face de: ").Font(fontPadrao).FontSize(tamanhoPadrao).Bold();

                //parte aAdversa
                Paragraph pParteAdversa = document.InsertParagraph();
                pParteAdversa.Alignment = Alignment.both;

                //insira quantas partes houverem
                var p = document.InsertParagraph();
                for (int i = 0; i < clientes.Count; ++i)
                {
                    pParteAdversa = document.InsertParagraph();
                    pParteAdversa.IndentationFirstLine = firstLinePadrao;
                    pParteAdversa.Alignment            = Alignment.both;

                    if (i == 0)
                    {
                        pParteAdversa.Append("em face de: ").Font(fontPadrao).FontSize(sizePadrao).Bold();
                    }

                    pParteAdversa.Append(clientes[i].Nome).Font(fontPadrao).FontSize(sizePadrao).Bold();
                    pParteAdversa.Append(clientes[i].QualificacaoComNomeVazio_).Font(fontPadrao).FontSize(sizePadrao);

                    var pontuacao = (clientes.Count - i > 1) ? ";" : ".";

                    pParteAdversa.SetLineSpacing(LineSpacingType.Line, 1.5f);
                    pParteAdversa.Append(pontuacao);
                }



                //FATOS
                //Cabeçalho
                document.InsertParagraph("DOS FATOS").FontSize(sizePadrao).Font(fontPadrao).Bold().SpacingAfter(0).Alignment = Alignment.left;

                txt = "Linha1-ação de execução de título extrajudicial de quem apenas gosta de jogar bola e não quer saber de nada que a banda toca. \nLinha2- mas se vc sabe onde estou então estamos bem.\nLinha3 aqui.";

                var docLines = txt.Split(new string[] { "\n" }, System.StringSplitOptions.None);

                var pFatos = document.InsertParagraph();
                foreach (var line in docLines)
                {
                    pFatos           = document.InsertParagraph();
                    pFatos.Alignment = Alignment.both;
                    pFatos.Append(line).Font(fontPadrao).FontSize(sizePadrao).IndentationFirstLine = firstLinePadrao;
                    pFatos.SetLineSpacing(LineSpacingType.Line, 1.5f);
                }


                //PEDIDOS
                //Cabeçalho
                document.InsertParagraph("DOS PEDIDOS").FontSize(sizePadrao).Font(fontPadrao).Bold().SpacingAfter(0).Alignment = Alignment.left;

                txt = "A) Este é o pedido 1\nB) Este é o pedido 2\nC) Este é o pedido 3.";

                docLines = txt.Split(new string[] { "\n" }, System.StringSplitOptions.None);

                foreach (var line in docLines)
                {
                    var pPedido = document.InsertParagraph();
                    pPedido.Alignment = Alignment.both;
                    pPedido.Append(line).Font(fontPadrao).FontSize(sizePadrao).IndentationFirstLine = firstLinePadrao;
                    pPedido.SetLineSpacing(LineSpacingType.Line, 1.5f);
                }

                //DATA E ASSINATURA
                //Cabeçalho

                //data
                var data = string.Concat("Goiânia, ", DateTime.Today.ToString("dd"), " de ", DateTime.Today.ToString("MMMM"), " de ", DateTime.Today.ToString("yyyy"), ".");
                document.InsertParagraph(data).FontSize(sizePadrao).Font(fontPadrao).SpacingBefore(30).Alignment = Alignment.center;
                // document.InsertParagraph(data).FontSize(sizePadrao).Font(fontPadrao).SpacingBefore(30).Alignment = Alignment.center;

                //assinatura
                document.InsertParagraph("Paulo do Nascimento").FontSize(sizePadrao).Font(fontPadrao).SpacingBefore(15).SpacingAfter(1).Alignment = Alignment.center;
                document.InsertParagraph("OAB/GO 33863").FontSize(sizePadrao).Font(fontPadrao).SpacingBefore(1).Alignment = Alignment.center;

                //remover paragrafos vazios
                var emptyLines = document.Paragraphs.Where(o => string.IsNullOrEmpty(o.Text));
                foreach (var paragraph in emptyLines)
                {
                    paragraph.Remove(false);
                }



                document.Save();
                Process.Start("WINWORD.EXE", filename);
            }
        }
Exemple #9
0
        private void btnGerarDocX3_Click(object sender, EventArgs e)
        {
            string fontPadrao      = "Verdana";
            int    sizePadrao      = 12;
            var    firstLinePadrao = 6.0f;
            string enderecarPara   = "EXCELENTÍSSIMO(A) SENHOR(A) JUIZ(A) FEDERAL DA VARA DO JUIZADO ESPECIAL FEDERAL DA SEÇÃO JUDICIÁRIA DO estado de Goiás".ToUpper();
            //string quaflicação =

            string filename = @"C:\GitHub\Test2.docx";

            using (DocX document = DocX.Create(filename))
            {
                document.ApplyTemplate(@"C:\GitHub\PeticaoModelo3.docx");


                //endereçamento
                document.InsertParagraph(enderecarPara).SpacingAfter(150).Font(fontPadrao).FontSize(sizePadrao);
                Paragraph p = document.InsertParagraph(enderecarPara.ToUpper());
                p.SpacingAfter(150).Alignment = Alignment.left;


                //p.StyleName = "Normal";


                p.IndentationFirstLine = 0.0f;



                //qualificação
                document.InsertParagraph("**" + cliente1.Nome + "**").Append(cliente1.QualificacaoComNomeVazio_).StyleName = "normal";
                //Paragraph pQUalificacao = document.InsertParagraph("**" + cliente1.Nome + "**").Append(cliente1.QualificacaoComNomeVazio_).StyleName = "normal";
                //pQUalificacao.Append(cliente1.QualificacaoComNomeVazio_).StyleName = "normal";



                //Parte principal
                string txt = ", por seu advogado que esta subscreve, vem à presença de Vossa Excelência, com fulcro na Legislação Pátria, propor a presente:";
                //pQUalificacao.Append(txt);

                //ação
                txt = "ação de execução de título extrajudicial".ToUpper();
                document.InsertParagraph(txt).SpacingBefore(30).SpacingAfter(30).Font(fontPadrao).FontSize(sizePadrao);
                //pAcao.StyleName = "normal";

                //FATOS
                //Cabeçalho
                //document.InsertParagraph("DOS FATOS").FontSize(sizePadrao).Font(fontPadrao).Bold().SpacingAfter(0).Alignment = Alignment.left;
                document.InsertParagraph("DOS FATOS").StyleName = "Ttulo1";
                txt = "Linha1-ação de execução de título extrajudicial de quem apenas gosta de jogar bola e não quer saber de nada que a banda toca. \nLinha2- mas se vc sabe onde estou então estamos bem.\nLinha3 aqui.";

                var docLines = txt.Split(new string[] { "\n" }, System.StringSplitOptions.None);
                foreach (var line in docLines)
                {
                    document.InsertParagraph(line).StyleName = "Normal";
                }

                //CONFIGURAR titulo 1 Ttulo2

                /*
                 * foreach (var paragrafo in document.Paragraphs)
                 * {
                 *
                 *  if (paragrafo.StyleName == "Ttulo1")
                 *  {
                 *      paragrafo.Font("Verdana").FontSize(18).IndentationFirstLine = firstLinePadrao;
                 *      paragrafo.Alignment = Alignment.both;
                 *      paragrafo.SetLineSpacing(LineSpacingType.Line, 1.5f);
                 *  }
                 * }
                 */



                //CONFIGURAR normal
                foreach (var paragrafo in document.Paragraphs)
                {
                    if (paragrafo.StyleName == "normalização")
                    {
                        paragrafo.Font("Verdana").FontSize(12).IndentationFirstLine = firstLinePadrao;
                        paragrafo.Alignment = Alignment.both;
                        paragrafo.SetLineSpacing(LineSpacingType.Line, 1.5f);
                    }
                }

                foreach (var paragrafo in document.Paragraphs)
                {
                    document.InsertParagraph(paragrafo.StyleName);
                }

                document.Save();
                Process.Start("WINWORD.EXE", filename);
            }
        }
Exemple #10
0
        /// <summary>
        /// Gera certificado para todos os alunos que tiverem 100% de presença no evento
        /// </summary>
        /// <param name="idEvento">evento desejado</param>
        /// <returns></returns>
        public static bool GeraCertificado(int idEvento)
        {
            AlunoRepository  ar              = new AlunoRepository();
            Evento           ev              = eventoRepository.GetEventoById(idEvento);
            bool             flag            = true;
            string           templatePath    = caminhoTemplates + "template-certificado.docx"; //caminhoDoTemplate
            List <Documento> certificadosDoc = new List <Documento>();
            var          template            = new FileStream(templatePath, FileMode.Open, FileAccess.Read);
            List <Aluno> alunos              = eventoRepository.GetAlunosPresentes(ev); //alunos com presença

            foreach (Aluno al in alunos)
            {
                string curso       = al.AlunoCurso.Select(x => x.Curso.Nome).FirstOrDefault().ToString();
                string novoArquivo = CriaDiretorio(new string[] { curso, al.IdAluno.ToString(), "Certificado" });
                novoArquivo = novoArquivo + "(" + al.IdUsuario + ") " + ev.IdEvento + " - " + "temp" + ev.NomeEvento + ".docx";
                Documento     documento = new Documento();
                TipoDocumento tipoDoc   = tipoDocumentoRepository.GetTipoDoc("Certificado");

                documento.IdTipoDoc     = tipoDoc.IdTipoDoc;
                documento.NomeDocumento = "(" + al.IdUsuario + ") " + ev.IdEvento + " - " + "temp" + ev.NomeEvento + ".pdf";
                documento.Data          = DateTime.Now;

                documento.IdAlunoCurso = al.AlunoCurso.Select(x => x.IdAlunoCurso).FirstOrDefault();
                documento.IdEvento     = ev.IdEvento;

                if (File.Exists(Path.ChangeExtension(novoArquivo, ".pdf")))
                {
                    // certificadosDoc.Add(documento);
                }
                else
                {
                    {
                        #region substitui informaçoes seguindo a template


                        DocX doc = DocX.Create(novoArquivo);

                        doc.ApplyTemplate(template, true);


                        if (doc.Text.Contains("<NOME>"))
                        {
                            doc.ReplaceText("<NOME>", al.Usuario.Nome);
                        }
                        if (doc.Text.Contains("<EVENTO>"))
                        {
                            doc.ReplaceText("<EVENTO>", ev.NomeEvento);
                        }
                        if (doc.Text.Contains("<HORAS>"))
                        {
                            doc.ReplaceText("<HORAS>", ev.CargaHoraria.ToString());
                        }
                        if (doc.Text.Contains("<DIA>"))
                        {
                            doc.ReplaceText("<DIA>", DateTime.Now.Day.ToString());
                        }
                        if (doc.Text.Contains("<MES>"))
                        {
                            string mes = DateTime.Now.ToString("MMMM", CultureInfo.CreateSpecificCulture("pt-BR"));
                            doc.ReplaceText("<MES>", mes);
                        }
                        if (doc.Text.Contains("<ANO>"))
                        {
                            doc.ReplaceText("<ANO>", DateTime.Now.Year.ToString());
                        }

                        doc.Save();
                        doc.Dispose();
                        Document pdf = new Document();
                        pdf.LoadFromFile(novoArquivo);
                        File.Delete(novoArquivo);
                        novoArquivo = Path.ChangeExtension(novoArquivo, ".pdf");
                        pdf.SaveToFile(novoArquivo, FileFormat.PDF);
                    }

                    #region criptografa certificado
                    try
                    {
                        string     caminhonovo = novoArquivo.Replace("temp", "");
                        FileStream fs          = new FileStream(caminhonovo, FileMode.Create);
                        byte[]     arquivo     = File.ReadAllBytes(novoArquivo);
                        File.Delete(novoArquivo);
                        RijndaelManaged rmCryp = new RijndaelManaged();
                        CryptoStream    cs     = new CryptoStream(fs, rmCryp.CreateEncryptor(Key, Key), CryptoStreamMode.Write);

                        foreach (var data in arquivo)
                        {
                            cs.WriteByte((byte)data);
                        }
                        cs.Close();
                        fs.Close();
                        documento.CaminhoDocumento = caminhonovo;
                        certificadosDoc.Add(documento);
                        ar.AdicionaHoras(ev.CargaHoraria, al.IdAluno, ev.IdEvento);
                    }
                    catch (Exception e)
                    {
                        flag = false;
                    }
                    #endregion

                    #endregion
                }
            }

            if (!documentoRepository.PersisteCertificados(certificadosDoc))
            {
                flag = false;
            }
            else
            {
            }

            return(flag);
        }