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
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.
@@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?
@@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
@@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
@@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()
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
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!
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!
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.
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?
Um ótimo conteúdo. Obrigado fessor Bruno
Entregou conteúdo p caramba … show de bola !
Muito obrigado pelas aulas... Tem me ajudado muito
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.
Tbm estou em busca desta informação ... conseguiu achar?
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
@CFBCursos @@gutembergsantana8423 Você sabe como posso criar o pdf e na hora de clicar em ''criar pdf'' já abrisse o navegador com pdf?
@@gutembergsantana8423 meu amigo,seu comentario de quase 1 ano atras me salvou,vlw
Não consigo gerar o executável com o pyinstaller, sempre falta alguma lib que esse biblioteca usa
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.
Eu queria para gerar mais de uma página de pdf
pode usar .showpage() para pular a pagina,mas no caso de texto longo,nao sei,kkkkk
@@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?
@@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
@@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
@@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()
fessor é nós...
Tá melhor da saúde, Brunão?
tô sim Alexandre, já estou bem melhor, a recuperação é lenta mas com certeza já estou bem melhor, graças a Deus
@@cfbcursos Graças a Deus. Vai dar certo. 👍👍👍👍👍
Fessor gostaria de ter informações sobre curso pago
Vc quer comprar um curso é isso?
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
já tentou usar o '
'?
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!
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!
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?
Uma dúvida. Como faço para que, ao gerar o pdf, exemplo atd.pdf, ele gere um novo arquivo atd1, atd2 etc?
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.
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?
H E L L O