Geração de Relatórios Profissionais em PDF usando C# e .NET 5

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 ธ.ค. 2024

ความคิดเห็น • 137

  • @EloiSartori-p8i
    @EloiSartori-p8i หลายเดือนก่อน +2

    Excelente exposição. Parabéns

  • @raphaeldevmtb
    @raphaeldevmtb 2 ปีที่แล้ว +8

    muito show Ricardo, normalmente só assisto vídeos em inglês porque é difícil achar conteúdo bom em português. Mesmo pesquisando em inglês o google indicou o seu video, sensacional. Obrigado!!!

    • @maroquio
      @maroquio  2 ปีที่แล้ว +2

      Muito obrigado pela confiança, Raphael! Bons estudos e um grande abraço pra ti!

  • @m4rsSyncNft
    @m4rsSyncNft 7 หลายเดือนก่อน +1

    que didatica incrível muito obrigado ganhou mais um seguidor, queria ter aprendido com alguém que ensina assim seria um profissional muito melhor.

  • @CassioJhones407
    @CassioJhones407 5 หลายเดือนก่อน +1

    Didática incrivel, parabens pelo video e pelo canal.

  • @aasf86
    @aasf86 5 หลายเดือนก่อน +1

    Comecei a programar no itextsharp, nostalgia total...

  • @cleytonemiliano
    @cleytonemiliano 8 หลายเดือนก่อน +1

    Que didática incrível. Tirei muito proveito dessa aula. Meus parabéns!!!

  • @l4fd145
    @l4fd145 ปีที่แล้ว +2

    Parabéns pelo vídeo, realmente, como dito pelo @Raphael Fogaça com qualidade de youtubers devs estrangeiros. Obrigado por compartilhar seu conhecimento que não é pequeno, conosco. Sou novo inscrito e vou ver mais vídeos seus.

    • @maroquio
      @maroquio  ปีที่แล้ว

      Valeu, Luiz. Grato pela confiança! Um grande abraço!

  • @adiemlaodracir
    @adiemlaodracir 7 หลายเดือนก่อน +1

    Excelente tutorial! Parabéns.

  • @tyran62
    @tyran62 3 ปีที่แล้ว +2

    Sua lógica de apresentação é excelente. Tudo na sequencia correta. Difícil de ver tal ordem na web brasileira.

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      Muito obrigado pelo comentário positivo, Rafael! Isso me ajuda muito a seguir em frente com esse trabalho. Um grande abraço!

  • @zedoido749
    @zedoido749 3 ปีที่แล้ว +2

    Excelente explicação!!! Mais didático que isso impossível. Parabéns pelo seu trabalho e muito sucesso. Que Deus te abençoe

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      Muito obrigado, camarada. Um grande abraço!

  • @sebengabriel
    @sebengabriel 2 ปีที่แล้ว +2

    Que dinâmica sensacional!!!! Parabéns

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Valeu, Gabriel. Fico feliz que tenha gostado. Um grande abraço e sucesso nos estudos!

  • @herbertcarvalho4806
    @herbertcarvalho4806 7 หลายเดือนก่อน +1

    obrigado pelo vídeo

  • @denilsonoliveira3750
    @denilsonoliveira3750 ปีที่แล้ว +1

    De vdd parabéns pela aula e muito obrigado pelo conhecimento que vc acabou de me passar... nossa OTIMO vídeo mesmo, muito bem explicado vou fazer um projeto igual com o seu sendo a minha base.

  • @leandromenezes29
    @leandromenezes29 5 หลายเดือนก่อน +1

    Sensacional! 🎉

  • @AllanVSousa
    @AllanVSousa 4 หลายเดือนก่อน +1

    Top

  • @williansantos1229
    @williansantos1229 2 ปีที่แล้ว +1

    mano, tu nem gagueja, queria ter a dicção igual a tua

    • @maroquio
      @maroquio  2 ปีที่แล้ว +2

      Ei, William! Camarada, claro que eu gaguejo, mas tiro tudo na edição do vídeo :) Com o passar do tempo, quando falamos sobre coisas que entendemos, a tendência é gaguejarmos menos, mas ainda assim de vez em quando rola uma gaguejada :) Um abraço pra ti e obrigado pela audiência. Valeu!

  • @JardelSG
    @JardelSG 2 หลายเดือนก่อน +1

    poderia fazer um video na mesma pegada mas jogando direto para impressão.

    • @maroquio
      @maroquio  หลายเดือนก่อน

      Olá, Jardel! Em um vídeo futuro eu vou tentar atender à sua sugestão, okay? Obrigado por assistir ao vídeo e pelo comentário. Um abraço!

  • @lksnvs3691
    @lksnvs3691 2 ปีที่แล้ว +1

    Clap, clap,clap. Aulão!

    • @maroquio
      @maroquio  2 ปีที่แล้ว

      Muito obrigado! Bons estudos e um forte abraço!

  • @WesleySSilva-dg2yd
    @WesleySSilva-dg2yd 2 ปีที่แล้ว +1

    Parabéns Ricardo. Conteúdo muito top.

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Obrigado pela confiança, Wesley! Um abraço!

  • @vilmarsilva835
    @vilmarsilva835 7 หลายเดือนก่อน +1

    Parabéns cara, muito bem explicado, excelente. Você poderia explicar tamém como gerar esse relatório a partir de um banco de dados?

    • @maroquio
      @maroquio  7 หลายเดือนก่อน

      Olá, Vilmar. Em um momento oportuno farei isso, okay? Um abraço e bons estudos!

  • @muriloschiler3303
    @muriloschiler3303 2 ปีที่แล้ว +1

    Salvou demais ! Parabéns

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Valeu, Murilo. Um abraço!

  • @Gustavoferreira73
    @Gustavoferreira73 ปีที่แล้ว +1

    Aula maravilhosa, eu estou pesquisando como fazer um programa para dividir PDF mas estou com muitas dificuldades.

  • @ilanofrota
    @ilanofrota ปีที่แล้ว +1

    Excelente material!
    Se não for pedir demais, tenho um problema seríssimo para gerar um relatório. Desenvolvi um sistema em que o usuário digita no CKEditor um texto onde ele pode inserir além do texto, imagens, tabelas, etc. Preciso gerar um relatório onde tenho um cabeçalho que se repetirá em todas as páginas e mostrar o conteúdo. Até consegui trazer textos e tabelas mas as imagens não. E o cabeçalho também não consigo fazer se repetir em todas as páginas. Será que poderia criar um vídeo onde tivesse esse tipo de situação?

    • @maroquio
      @maroquio  ปีที่แล้ว

      Olá! É possível fazer tudo isso, mas eu não conseguiria lhe passar tudo por aqui, porque seria algo extenso em que envolve mais de um arquivo. Quando eu puder, tento criar um vídeo que mostre isso, okay? Me desculpe por não conseguir ajudá-lo de imediato. Bons estudos e um grande abraço!

  • @joaopinto1121
    @joaopinto1121 ปีที่แล้ว +1

    😀 Excelente didática... Obrigado.

  • @wagnereliasdeandrade
    @wagnereliasdeandrade 3 ปีที่แล้ว +2

    Excelente aula, no caso preciso mostrar um total no final da tabela, posso adicionar uma linha separada da tabela mostrando total + resultado? como faria isso?

    • @maroquio
      @maroquio  3 ปีที่แล้ว +1

      Obrigado, Wagner. Para adicionar mais uma linha no fim da tabela, após a linha 127 (imediatamente antes de pdf.Add(tabela)), digite os seguintes comandos:
      CriarCelulaTexto(tabela, "Total:", PdfPCell.ALIGN_RIGHT, true, colspan: 4);
      CriarCelulaTexto(tabela, "R$ 250,00", PdfCell.ALIGN_CENTER, false);
      Agora vá até o método CriarCelulaTexto, mude sua assinatura adicionando "int colspan=1", e mude o final incluindo "celula.Colspan = colspan;". Vai ficar assim...
      static void CriarCelulaTexto(PdfPTable tabela, string texto,
      int alinhamento = PdfPCell.ALIGN_LEFT,
      bool negrito = false, bool italico = false,
      int tamanhoFonte = 12, int alturaCelula = 25, int colspan = 1)
      {
      ...
      //código anterior
      celula.Colspan = colspan;
      tabela.AddCell(celula);
      }
      Dessa forma, você passará a conseguir definir quantas colunas uma célula vai ocupar. Já testei aqui e funcionou de boa. Veja se vai dar certo aí e qq coisa me chame aqui.
      Um grande abraço!

    • @wagnereliasdeandrade
      @wagnereliasdeandrade 3 ปีที่แล้ว +1

      @@maroquio obrigado estou seguindo sua video aula, só mais uma dívida, é possível converter este relatório para excel ou precisaria converter o pdf para excel?

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      @@wagnereliasdeandrade programaticamente o iTextSharp não converte diretamente para Excel. Acredito que seja mais fácil encontrar um outro componente que gere direto em Excel. Veja se encontra algum no gerenciador de pacotes Nuget. É muito provável que tenha. Se não encontrar, comente aqui novamente. 👍

    • @wagnereliasdeandrade
      @wagnereliasdeandrade 3 ปีที่แล้ว +1

      @@maroquio sim eu já encontrei mais é pago tipo 150 dólares por mês kkk totalmente inviável e o arquivo não fica legal

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      @@wagnereliasdeandrade caramba! Muito caro! Vou ver se encontro uma alternativa e posto aqui. 👍

  • @mmipardini
    @mmipardini 2 ปีที่แล้ว +1

    Vídeo excelente!

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Muito obrigado pelo apoio, Micaela! Um grande abraço!

  • @carlosxavier6466
    @carlosxavier6466 ปีที่แล้ว +1

    Parabéns pelo vídeo.
    O arquivo json não está disponível.
    Não existe mais.

    • @maroquio
      @maroquio  ปีที่แล้ว +1

      Obrigado! Eu acertei o link do arquivo JSON. Veja se consegue baixar agora. Um abraço!

  • @AlexandreRodriguesrj
    @AlexandreRodriguesrj 3 ปีที่แล้ว +1

    Excelente aula!

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      Muito obrigado, Alexandre. Espero continuar atendendo às suas expectativas. Um grande abraço!

  • @vagnersantos2686
    @vagnersantos2686 3 ปีที่แล้ว +1

    Muito bom!
    Resolveu meu problema!
    Obrigado pela ajuda!

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      Disponha! Obrigado pela confiança em meu trabalho. Se puder, compartilhe esse conteúdo para ajudar o canal a crescer. Um grande abraço!

    • @vagnersantos2686
      @vagnersantos2686 3 ปีที่แล้ว +1

      @@maroquio Ja compartilhei com um monte de gente kkk
      Muito bom mesmo!

    • @maroquio
      @maroquio  3 ปีที่แล้ว +1

      @@vagnersantos2686 muito obrigado mesmo, camarada!

  • @CarlosStunitz
    @CarlosStunitz 2 ปีที่แล้ว +1

    Demais.
    Muitíssimo obrigado.

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Disponha! Eu que agradeço pela confiança. Um abraço!

  • @adielcardoso-ky2gm
    @adielcardoso-ky2gm 8 หลายเดือนก่อน +1

    Como faria para deixar em modo paisagem ? quando deixo o meu ele perde o cabeçalho!

    • @maroquio
      @maroquio  7 หลายเดือนก่อน +2

      Olá, Adiel. Me desculpe pela demora na resposta. Vou te passar um código que mostra como deixar a página em modo paisagem. Segue:
      using System;
      using System.Collections.Generic;
      using System.IO;
      using iTextSharp.text;
      using iTextSharp.text.pdf;
      public class RelatorioPDF
      {
      public static void GerarRelatorioPDF(List pessoas)
      {
      // Definir o tamanho da página como paisagem
      Document pdf = new Document(PageSize.A4.Rotate(), 15f, 15f, 15f, 20f);
      string caminhoArquivo = "relatorio_paisagem.pdf";
      PdfWriter writer = PdfWriter.GetInstance(pdf, new FileStream(caminhoArquivo, FileMode.Create));
      pdf.Open();
      // Seu código para adicionar conteúdo ao PDF aqui
      pdf.Close();
      writer.Close();
      }
      }
      Observe a linha de criação do documento. Lá, o método Rotate() é usado. Espero que isso ajude. Um abraço!

    • @adielcardoso-ky2gm
      @adielcardoso-ky2gm 7 หลายเดือนก่อน +1

      @@maroquio Obrigado campeão!

  • @michaelvilarino5464
    @michaelvilarino5464 2 ปีที่แล้ว +1

    Excelente aula!!! Teria como disponibilizar o código fonte utilizado na explicação?

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Olá, Michael! Na descrição do vídeo tem o link para download. Bons estudos e um grande abraço!

    • @Asuos321
      @Asuos321 2 ปีที่แล้ว +1

      ​@@maroquio no link disponibilizado contém apenas os arquivos de imagem e json, o código fonte não está presente.
      Desde já agradeço pela excelente aula

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      @@Asuos321 , coloquei na descrição o link para download do projeto. Confira lá! Um abraço!

  •  2 ปีที่แล้ว +1

    q top.

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Valeu, Tarcísio! Um abraço!

  • @antoniojunior7826
    @antoniojunior7826 ปีที่แล้ว +1

    Teria como adicionar graficos nesse relatorio?

    • @maroquio
      @maroquio  ปีที่แล้ว

      Olá, Antônio! Infelizmente não há um gerador de gráficos nativo nessa versão do iTextSharp. O que você pode fazer é gerar o gráfico fora ou usando manipulação de imagens e incorporar no relatório como uma imagem normal. Um abraço e bons estudos!

  • @gabrielloureirog
    @gabrielloureirog 2 ปีที่แล้ว +1

    Tem algum video que mostra como pegar um PDF e concatenar em varias paginas?

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Olá, Gabriel. Não tenho nenhum vídeo que faça isso, mas imagino que não seja algo muito complicado de se fazer. Dê uma olhada no link a seguir:
      www.c-sharpcorner.com/article/merge-number-of-pdf-into-a-single-pdf-using-itextsharp/
      Bons estudos!

  • @ricardoahid
    @ricardoahid 3 ปีที่แล้ว +1

    Mais um inscrito Ricardo, vlw grande professor

    • @maroquio
      @maroquio  3 ปีที่แล้ว +1

      Que bom que me deu essa honra, camarada! Obrigado pela confiança em meu trabalho e um grande abraço pra ti!

  • @G0mes_g
    @G0mes_g 3 ปีที่แล้ว +2

    Excelente vídeo! Parabéns. Fiz umas adaptações no meu código para que ele pudesse gerar um relatório com dados a partir de um banco de dados de um projeto que estou fazendo na faculdade. Deu certo, mas na hora de abrir o pdf o sistema não o acha na pasta bin/debug. Mandando ele abrir com o google chrome, ele gera 3 abas com o caminho completo divido nessas 3 abas. Sabe o que pode ser?

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      Obrigado pelo comentário positivo, Gabriel! Quanto à sua dúvida em relação à abertura do PDF, honestamente não sei o motivo de isso estar acontecendo. Me desculpe não poder ajudar. Verifique se o objeto que gera o PDF está sendo fechado no momento certo no código. Essa é a única coisa que me passou pela cabeça. Talvez a informação de fim de arquivo esteja incompleta... Bem, me desculpe por não conseguir ajudar mais do que isso. Espero que consiga resolver. Um abraço!

    • @G0mes_g
      @G0mes_g 3 ปีที่แล้ว +1

      @@maroquio Fala Ricardo, obrigado pela ajuda. O problema na verdade está no meu computadorkkkkkkkkkk por algum infeliz motivo ele nao esta abrindo o pdf, mas no de todos que eu mandei o projeto funcionou normalmente. Valeu

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      @@G0mes_g 😁 Beleza, Gabriel. O importante é que descobriu o problema. 👍👍👍

    • @G0mes_g
      @G0mes_g 3 ปีที่แล้ว

      @@maroquio fala cara, sou eu novamente. Deixa eu re perguntar, há como mudar o diretório em que os arquivos em PDF sao criados?

  • @ayrtonramos488
    @ayrtonramos488 6 หลายเดือนก่อน +1

    Olá gostaria de saber se esse mesmo código consegue ser implantado da linguagem C ao invés do C# ?

    • @maroquio
      @maroquio  2 หลายเดือนก่อน

      Olá! Não com a mesma biblioteca. Provavelmente o C tem várias bibliotecas para geração de PDF. Um abraço!

  • @cristianoconsule6430
    @cristianoconsule6430 2 ปีที่แล้ว +1

    É possível fazer merge de celulas?

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Olá, Cristiano. É possível, sim. Dá uma olhada no exemplo desse link: kb.itextpdf.com/home/it5kb/examples/colspan-and-rowspan . Espero ter ajudado. Um abraço!

  • @Insullin4
    @Insullin4 2 ปีที่แล้ว +1

    tem alguma maneira de salvar esse pdf como memory stream utilizando o itext?

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Olá, Cesar. Com certeza tem jeito. Dá uma olhada nesse artigo: www.aspsnippets.com/Articles/iTextSharp-Generate-PDF-in-Memory-and-send-as-Email-Attachment-using-C-VBNet-and-ASPNet.aspx . Espero que ajude. Um grande abraço e bons estudos!

  • @ElvisALves1701
    @ElvisALves1701 2 ปีที่แล้ว +1

    da pra usar numa aplicação Xamarin?

    • @maroquio
      @maroquio  2 ปีที่แล้ว

      Olá, Elvis. Não testei, mas penso que sim, porque a geração do PDF em si não depende de tecnologia de interface. Um abraço!

  • @galeriamarcos
    @galeriamarcos ปีที่แล้ว +1

    Por algum motivo meu Visual Studio community 2019 não abre a janela do visualizador padrão de PDF, tentei colocar o navegador no obj para visualizar mas não deu certo. Dessa forma não consigo ver como o PDF está ficando, tem alguma configuração que precisa ser feita no Visual ?

    • @maroquio
      @maroquio  ปีที่แล้ว

      Olá! Infelizmente não consigo lhe dizer o que pode estar acontecendo em seu computador. Sugiro que mantenha o Windows Explorer aberto na pasta do projeto e abra o PDF por ele. Espero que ajude. Um abraço!

  • @Jonathan-sf4gc
    @Jonathan-sf4gc 2 ปีที่แล้ว +1

    Bela aula !!
    uma duvida, conseguiria por exemplo, gerar um relatório descriminando a quantidade de imagens e o nomenclatura de um arquivo .pdf dentro de pastas ?

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Olá, Jonathan! Eu não consegui compreender sua dúvida. Poderia detalhar um pouco mais? Um abraço!

    • @Jonathan-sf4gc
      @Jonathan-sf4gc 2 ปีที่แล้ว +1

      @@maroquio Por exemplo: existe uma pasta chamada "pdf exportados", dentro desta pasta existe vários arquivos .pdfs com nomes diferentes. Gostaria de desenvolver uma solução que me listasse a nomenclatura desses .pdfs + a quantidade de imagens que cada um tem .

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      @@Jonathan-sf4gc , me desculpe pela demora tardia. Listar a nomenclatura dos PDFs é tranquilo se souber a pasta em que eles estão. Basta criar um objeto do tipo DirectoryInfo e ele será capaz de lhe dar uma listagem dos arquivos. Contar as imagens dentro de cada PDF penso ser possível também, mas nunca o fiz. Vou ficar te devendo... :-\ Um abraço pra ti!

  • @LucasRodrigues-vs5qj
    @LucasRodrigues-vs5qj 2 ปีที่แล้ว +1

    Oi Ricardo. Primeiramente, muito obrigado por essa aula cara. Você me salvou, já estava pra ficar doido tentando gerar um PDF em WPF
    Mas deu tudo certo. Gostaria de saber se tem como eu conseguir por lá na última página, no final da tabela um totalizador com os valores apresentados. Se puder me auxiliar com isso, agradeço muito!

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Olá, Lucas! Com certeza é possível fazer isso que você quer, mas eu não tenho nada pronto pra te enviar ou tempo para gravar um vídeo com isso no momento. Veja se esse post ajuda em algo: stackoverflow.com/questions/39702435/c-sharp-itextsharp-subtotal-on-every-page . Espero que sim. Um abraço!

    • @LucasRodrigues-vs5qj
      @LucasRodrigues-vs5qj 2 ปีที่แล้ว +1

      @@maroquio Fala grande. Mexendo eu acabei conseguindo
      De qualquer modo, muito obrigado

  • @fanturyP
    @fanturyP 3 ปีที่แล้ว +1

    Parabéns Ricardo, mas eu gostaria de tirar duvida, como eu faço para adicionar o cabeçalho em todas as minhas paginas ?

    • @maroquio
      @maroquio  3 ปีที่แล้ว +2

      Olá, Péricles! Obrigado! Nesse caso, você teria que sobrescrever o evento OnStartPage e criar o cabeçalho dentro dele, de forma semelhante ao que fiz no evento OnEndPage para mostrar o rodapé com o número da página. Veja se consegue fazer. Se não conseguir, tentarei ser mais específico. Um grande abraço!

    • @fanturyP
      @fanturyP 3 ปีที่แล้ว +1

      @@maroquio obrigado resolveu

    • @maroquio
      @maroquio  3 ปีที่แล้ว +2

      @@fanturyP , que bom, camarada. Valeu!

  • @jersonbrito
    @jersonbrito 3 ปีที่แล้ว +3

    Excelente professor, também utilizo o iText mas é bem complicado de encontrar conteúdo de qualidade como esse que gerou. Uma dúvida, como chegou a quantidade de pixels?

    • @maroquio
      @maroquio  3 ปีที่แล้ว +2

      Muito obrigado pelo comentário positivo, Jerson. Na verdade eu calculei me baseando na resolução de 72dpi que costuma ser padrão para exibição de documentos em telas. Então eu dividi 72 pelo tamanho 1 polegada em milímetros (25,2, mas deveria ser 25,4), e a partir daí eu tenho quantos pixels eu preciso deslocar para mover 1mm. Depois fui utilizando essa razão no restante do código. Espero ter esclarecido. Um grande abraço!

    • @andersongabrielsilva2817
      @andersongabrielsilva2817 3 ปีที่แล้ว

      Lá nos também trabalhamos com itext

    • @JoaoMarcosSertao
      @JoaoMarcosSertao 2 ปีที่แล้ว +1

      @@maroquio prof me da um norte de como gerar um documento para aquelas impressora thermicas, dei uma pesquisada e vi que da pra gerar um doc no formato Retangular, mas travei aqui em como determinar as medidas eu sei que elas geralmente trabalham com 80mm mas o tamanho varia dependendo dos regristros, imaginei de primeiro fazer uma base dependendo dos registro no banco de dados multiplicar os px logo depois somar com os demais px.

    • @maroquio
      @maroquio  2 ปีที่แล้ว

      @@JoaoMarcosSertao , eu vou ficar te devendo, camarada. Eu nunca fiz nada nesse tipo de impressora. Lamento não poder te ajudar e te desejo boa sorte. Um abraço!

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      @@JoaoMarcosSertao , me desculpe pela demora na resposta. Tempo corrido demais aqui... Eu nunca gerei relatórios para essas impressoras. Sinceramente, não sei como configurá-las. Veja se esse vídeo vai ajudar em algo: th-cam.com/video/osI7P1YdL3o/w-d-xo.html . Espero que consiga resolver. Um abraço!

  • @rafaellima0408
    @rafaellima0408 6 หลายเดือนก่อน +1

    Não tem como pegar o total de páginas sem fazer esse cálculo de linhas? Estou gerando um relatório que nao contém apenas linhas, mas outros itens, então nao dá para usar a lógica de número de linhas.

    • @maroquio
      @maroquio  หลายเดือนก่อน +2

      Olá, Rafael. Se tiver alguma forma, eu realmente ainda não sei. Cada gerador de relatórios tem suas particularidades. Com este, esta foi a forma que consegui fazer. Mais adiante, abordarei outros geradores de PDF aqui no canal. Fique atento. Um abraço!

    • @rafaellima0408
      @rafaellima0408 หลายเดือนก่อน +1

      @@maroquio muito obrigado, com esse teu vídeo já fiz muitos relatórios e uso nas minhas aplicações

  • @janilsonbaierski8481
    @janilsonbaierski8481 2 ปีที่แล้ว +1

    Boa Tarde professor Ricardo, super show esse vídeo, já estou utilizando... Pintou a necessidade agora de assinar alguns PDF´s com certificado digital da empresa, você possui algum exemplo ou link para a gente verificar como fazer ?

    • @maroquio
      @maroquio  2 ปีที่แล้ว +2

      Valeu, Janilson! Ainda não fiz nada relacionado à assinatura digital de PDFs, mas achei a ideia interessante. Assim que possível vou tentar postar algo a respeito. Um grande abraço!

  • @Rian1991Carlos
    @Rian1991Carlos 3 ปีที่แล้ว +1

    Mister, seria possível separar por categorias e exibir os totais de cada categoria? Ex: Agrupar por cargos

    • @maroquio
      @maroquio  3 ปีที่แล้ว +1

      Olá, Rian! Com certeza isso é possível. Usando LINQ você consegue fazer consultas com dados relacionados (JOINs). Dê uma pesquisada sobre o método LINQ "Include" para a realização de JOINs em consultas. Um abraço!

  • @MichaelNeves92
    @MichaelNeves92 3 ปีที่แล้ว

    sensacional sua explicação, muito obrigado por essa dedicação e por ensinar :)

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      Muito obrigado, Michael! Disponha! Espero continuar atendendo às suas expectativas. Um grande abraço.

  • @eohgann
    @eohgann 7 หลายเดือนก่อน +1

    Eu tenho um modelo de pdf sabe como que eu altero desse modelo ja existe?

    • @maroquio
      @maroquio  7 หลายเดือนก่อน

      Olá! Infelizmente a alteração de PDF requer um processo mais complexo. O ideal seria tentar criar um modelo parecido programaticamente mesmo.

  • @Nelelson
    @Nelelson 2 ปีที่แล้ว +1

    Tem como criar documento com um texto justificado e com marca de água?

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Olá, Manuel. Tem como criar texto justificado, sim: stackoverflow.com/questions/10145557/how-justify-text-using-itextsharp. Quanto à marca d'água, também é possível: www.aspsnippets.com/questions/202271/Add-Water-mark-image-to-PDF-using-iTextsharp-C-and-VBNet-in-ASPNet/ . Bons estudos!

  • @felipework10
    @felipework10 2 ปีที่แล้ว +1

    Muito bom! Você poderia mostrar como posso fazer esse código ser baixado direto pelo navegador do cliente invés de gerar e salvar em meu servidor?

    • @lucaspepes3401
      @lucaspepes3401 ปีที่แล้ว

      opa amigo, me encontrei numa situação parecida com a sua, oq eu fiz foi retornar em um IActionResult do tipo File, e em vez de passar o doc para geração do writer, eu passei um MemorySteram, dai na hora de retornar eu converti o MemoryStream para bytes com .toArray e retornei

    • @maroquio
      @maroquio  ปีที่แล้ว

      Dá uma olhada na aula de upload de arquivos do curso de desenvolvimento web aqui do canal. Valeu!

  • @yuripinheiro6322
    @yuripinheiro6322 ปีที่แล้ว +1

    Muito bom, me lembrou bastante CSS, porém achei muito verboso.

  • @walney2008
    @walney2008 3 ปีที่แล้ว +1

    como gerar parcelas de faturamento e relatorio de promisorias , carnes com e sem codigo de barras em c# ?

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      Olá, Walney. O processo é o mesmo, só mudam os dados. No caso do código de barras, existe uma biblioteca que facilita bastante a geração. O nome dela é BarcodeLib e está disponível com um pacote NuGet. Espero ter ajudado. Um grande abraço!

    • @walney2008
      @walney2008 3 ปีที่แล้ว +1

      como se cria relatorios em c# ? no delphi tem o fortes report

    • @maroquio
      @maroquio  3 ปีที่แล้ว +1

      @@walney2008 Esse vídeo mostra como criar relatórios, porém, programaticamente. Se busca algo mais visual e gratuito, no estilo do Fortes Report, existe o FastReport, que é de código-aberto. Como não posso colocar links aqui, busque por "FastReport C#" no Google e ele te levará ao lugar certo. Espero que isso lhe ajude. Um abraço!

    • @walney2008
      @walney2008 3 ปีที่แล้ว +1

      muito obrigado

    • @maroquio
      @maroquio  3 ปีที่แล้ว

      @@walney2008 Disponha, Walney. Espero que consiga implementar o que deseja. Um abraço!

  • @mauricibarth9503
    @mauricibarth9503 2 ปีที่แล้ว +1

    Funciona para o net core 3.1?

    • @maroquio
      @maroquio  2 ปีที่แล้ว +1

      Funciona, sim, Mauricí. Basta baixar os pacotes para a versão 3.1. Um grande abraço!

  • @mxenofonte
    @mxenofonte 2 ปีที่แล้ว

    Ótimo video. Vc disse que o código fonte está na descrição... Mas só vi o arquivo.zip com apenas O Json. É isso mesmo?

    • @maroquio
      @maroquio  2 ปีที่แล้ว

      Olá, Márcio. Acabei de colocar na descrição o link para baixar o código-fonte do projeto. Obrigado por avisar! Um abraço!

  • @DanCalist
    @DanCalist ปีที่แล้ว +1

    gostaria de fazer exatamente isso, porém com javascript, node...mas não achei nada legal assim igual esse video...

    • @maroquio
      @maroquio  ปีที่แล้ว

      Olá, Daniel. Eu até uso Node.js com meus alunos, mas confesso que não fiz nada com geração de PDFs com Node ainda. Se por acaso eu souber de algum pacote que ajude legal, te aviso aqui. Um abraço!

  • @guilhermedinizdosreisgomes5030
    @guilhermedinizdosreisgomes5030 ปีที่แล้ว +1

    O arquivo json caiu 😢

    • @maroquio
      @maroquio  ปีที่แล้ว

      Obrigado por avisar, Guilherme. Vou verificar para consertar. Um abraço!

  • @MrLeoYordi
    @MrLeoYordi 3 ปีที่แล้ว +1

    Olá! Fantástico, muito obrigado!
    Apareceu uma dúvida e não sei se você saberia responder diretamente isso: vi que você usa uma versão do iTextSharp sob a licença LGPL/MPL. Não consigo entender as obrigações e liberdades dessas licenças. Como sou brasileiro, acabo ficando desconfiado das entrelinhas :(. Será que essa licença permite ser usada para aplicativo comercial, fechado? O aplicativo não será vendido por si só, mas será um pacote de automação, com eletrônica, elétrica e CLP. Não será disponível em lojas nem em sites de vendas.
    Desculpe tocar no tema, mas não sei onde encontrar informação clara, para leigos em leis. Se souber responder ou indicar onde encontro 'laws for dummies' 😅 eu agradeço! Se não souber, sem problemas. Muito boa sua explicação.

    • @maroquio
      @maroquio  3 ปีที่แล้ว +1

      Olá, Leopoldo! Obrigado pelo comentário positivo e por levantar uma questão tão relevante para nossa área. Até onde sei, a licença LGPL permite o uso e a distribuição em formato de biblioteca. Pelo que entendi, se o código LGPL for usado dentro do software, o software também deve ser LGPL. Mas se o código LGPL estiver em uma biblioteca separada, o software que faz uso da biblioteca pode ser proprietário. No caso da iTextSharp sob LGPL, se ela acompanhar o software como biblioteca, o software pode ser proprietário. Esse foi meu entendimento do texto, mas como também não sou da área jurídica, eu posso estar completamente equivocado. Kkkk.. Em síntese, em teria que estudar um pouco mais o assunto para lhe dar certeza, mas eu acredito que seja isso mesmo que lhe falei. Um abraço!