Criando arquivos PDF em Python com Reportlab

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

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

  • @Pedro-pv2pp
    @Pedro-pv2pp 4 ปีที่แล้ว

    Um ótimo conteúdo. Obrigado fessor Bruno

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

    Entregou conteúdo p caramba … show de bola !

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

    Muito obrigado pelas aulas... Tem me ajudado muito

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

    Excelente.
    E para fazer a mudança de página, como se faz? Se eu tiver informações para umas 3 páginas, por exemplo.

    • @RafaelSouza-ru8dk
      @RafaelSouza-ru8dk 3 ปีที่แล้ว

      Tbm estou em busca desta informação ... conseguiu achar?

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

      Sim. Dentro da minha função para a geração do pdf, que é uma listagem dos itens do meu BD, coloquei estas linhas:
      y = 0
      pdf = canvas.Canvas("Lista de Livros")
      linha = 800
      pagina = 0
      for i in range(0, len(dados_lidos)):
      if linha == 800:
      pdf.drawString(200, linha, "Relação de Livros Cadastrados")
      linha = linha - 50
      pdf.drawString(10, linha, "ORD")
      pdf.drawString(50, linha, "TÍTULO")
      pdf.drawString(310, linha, "AUTOR")
      pdf.drawString(430, linha, "FORMATO")
      pdf.drawString(510, linha, "CONCEITO")
      linha = linha - 20
      y = y + 20
      pdf.drawString(10,linha - y, str(i + 1))
      pdf.drawString(50, linha - y, str(dados_lidos[i][1]))
      pdf.drawString(310, linha - y, str(dados_lidos[i][2]))
      pdf.drawString(480, linha - y, str(dados_lidos[i][4]))
      pdf.drawString(530, linha - y, str(dados_lidos[i][7]))
      linha = linha - y
      if linha

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

      @CFBCursos @@gutembergsantana8423 Você sabe como posso criar o pdf e na hora de clicar em ''criar pdf'' já abrisse o navegador com pdf?

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

      @@gutembergsantana8423 meu amigo,seu comentario de quase 1 ano atras me salvou,vlw

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

    Não consigo gerar o executável com o pyinstaller, sempre falta alguma lib que esse biblioteca usa

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

    Boa tarde Bruno, conteúdo muito bom, facil de aprender e bom de programar, eu tenho uma dívida nesse programa da Agenda.
    como eu faço para pular de um campo para o outro apeas digitando a tecla enter ao invés da tecla Tab ?
    desde já agradeço pela aula e pela informação se possível for.

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

    Eu queria para gerar mais de uma página de pdf

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

      pode usar .showpage() para pular a pagina,mas no caso de texto longo,nao sei,kkkkk

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

      @@relaxedconcentration tô entendendo. Eu usei esse método, cria outra pagina de pdf mas os dados do banco de dados MySQL não vão pra a outra pagina quando completa a página anterior. Entendeu?

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

      @@renatotorres5343 Simm,entendi,eu quero fazer exatamente isso ai,mas não tô conseguindo também,se descobrir,não esquece de me contar aqui kkkkkkkkkkkkk

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

      @@renatotorres5343 para passar a pagina assim que estiver cheia,voce usa uma variavel para contar os pontos,e usa um if linha>=790: show.Page(),ai da certo

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

      @@relaxedconcentration é assim que você fala:
      for i in range(0, len(dados_lidos)):
      y = y + 18
      #pdf.drawString(10, 750 - y, str(dados_lidos[i][0]))
      pdf.drawString(50, 790 - y, str(dados_lidos[i][1]))
      pdf.drawString(105, 790 - y, str(dados_lidos[i][2]))
      pdf.drawString(145, 790 - y, str(dados_lidos[i][3]))
      pdf.drawString(430, 790 - y, str(dados_lidos[i][4]))
      pdf.drawString(500, 790 - y, str(dados_lidos[i][5]))
      if y >= 790:
      pdf.showPage()
      pdf.save()

  • @jigsawdesigners8328
    @jigsawdesigners8328 4 ปีที่แล้ว

    fessor é nós...

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

    Tá melhor da saúde, Brunão?

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

      tô sim Alexandre, já estou bem melhor, a recuperação é lenta mas com certeza já estou bem melhor, graças a Deus

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

      @@cfbcursos Graças a Deus. Vai dar certo. 👍👍👍👍👍

  • @368anita1
    @368anita1 4 ปีที่แล้ว

    Fessor gostaria de ter informações sobre curso pago

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

    qual o código em reportlab que uso para fazer a quebra de linha de um texto longo? Por exemplo quero fazer o texto longo ou paragrafo fique em uma parte do pdf, e sempre em uma determinada medida ele faça a quebra de linha e vá para o próxima linha. Parabéns pelo Trabalho

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

      já tentou usar o '
      '?

    • @GabrielSantos-qj6pg
      @GabrielSantos-qj6pg 3 ปีที่แล้ว +1

      Para quebrar linha tu vai ter que importar dessa mesma bib, por exemplo o Paragraph, com ele voce conseguirá converter os '
      ' no seu texto para '' e assim ele quebrará as linhas. .. Acredite em min, foram 3 dias pesquisando sobre isso!

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

    Muito bom video, gostaria de saber como posso pegar um texto de uma variavel e quebrar a linha quando chegar ate determinado ponto. O texto vem e continua direto em uma unica linha se perdendo na borda. Muito obrigado, parabens pelo canal!

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

    Bom dia, Professor! Acabei de me escrever no canal. Qual método eu uso para gerar várias páginas de PDF, caso essa lista dê mais de uma página?

  • @esportemcena
    @esportemcena 4 ปีที่แล้ว

    Uma dúvida. Como faço para que, ao gerar o pdf, exemplo atd.pdf, ele gere um novo arquivo atd1, atd2 etc?

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

      Tenta utilizar o comando de criação dentro de um laço de repetição (for) com o nome do arquivo composto por um indexador
      Exemplo
      for i in range(3):
      cnv = canvas.Canvas(f"{pastaApp}\\atd{i}.pdf",pagesize=A4)
      Deste modo testei aqui e funcionou perfeitamente.

  • @jeansilva2739
    @jeansilva2739 4 ปีที่แล้ว

    Boa noite Bruno, primeiramente parabéns pelo trabalho, Bruno tentei deixar a pagina do pdf em landscape (retrato), porém eu não consegui realizar a impressao em A4. Por gebtilezavocê teria alguma dica para, como posso fazer para deixar a página em A4 porém em landscape?

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

    H E L L O