Duvida gerar pdf com mpdf dinamicamente usando php ou gerar pdf da pagina visualizada

324 views
Skip to first unread message

Ederson Pereira de Brito

unread,
Jun 5, 2017, 6:21:30 PM6/5/17
to list...@googlegroups.com
A minha duvida esta no seguinte, tenho uma pagina que gera boletos de variados bancos e todos visualizado diretamente no navegador ou seja o resultado final em html para impressão, mas o cliente ao imprimir a pagina do boleto com o navegador chrome o código de barras não esta sendo visualizado correto no momento da impressao apertando (ctrl + p) perdendo as linhas mais finas e ja em outros navegadores funciona corretamente, agora gostaria de que esta pagina visualizada possa ser gerada um pdf de forma dinâmica ou seja o seu resultado final, como eu adiciono meu resultado final da minha pagina que foi dinamicamente criada com php e html e por final gerar o pdf da pagina, em outras palavras gerar o pdf dos boletos.   

<?php

//codigos do boletos estaria aqui logo apos chamar algo para gerar o pdf depois de ter tudo concluído relacionado ao boleto

$html = '
Entendo que tudo que tiver aqui a saída vai ser em pdf, me parece q aqui neste local nao sera aceito a pagina dinamicamente com os codigos php com varias abertura e fechamento da tag e demais loop que utilizo para gerar varios boletos em conjunto.
';

//================================================
include("../mpdf.php");
$mpdf=new mPDF('c'); 

$mpdf->WriteHTML($html);
$mpdf->Output();
exit;

?>
Obrigado a quem puder me dar um norte de ao menos onde devo começar minha buscas e caso alguem tenha uma solução mais pratica fico grato pois o que nao quero é ter que mexer nos arquivos de cada banco, visto que são vários e mexer com layout de banco é chato e um erro ja sabe ligações sem fim.


Milton A

unread,
Jun 6, 2017, 7:43:28 AM6/6/17
to list...@googlegroups.com

--
--
============================================================
JQUERY MAGAZINE > http://www.jquerymagazine.com.br
--
PHP MAGAZINE > http://www.phpmagazine.com.br
--
LISTA NODE.JS > https://groups.google.com/group/lista-nodejs?hl=pt-br
--
AJAX-BRASIL > http://groups.google.com/group/ajax-brasil
--
PYTHON-GOOGLE > http://groups.google.com.br/group/python-google
--
DOTNET-BRASIL > http://groups.google.com.br/group/dotnet_br
============================================================

---
Você recebeu essa mensagem porque está inscrito no grupo "LISTA PHP" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para listaphp+unsubscribe@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Ederson Pereira de Brito

unread,
Jun 6, 2017, 2:33:15 PM6/6/17
to list...@googlegroups.com
Milton obrigado por responder, seria uma saída legal usar desta forma mas terei que mudar como é visualizado o boleto pois precisa estar logado para ver o boleto e nesse caso ai o boleto é um arquivo direto no disco gostaria so no momento de visualização como no mpdf, vou pensar um pouco mais sobre o assunto se acho mais alternativas.

FABIO MATEUS

unread,
Aug 13, 2017, 2:50:41 PM8/13/17
to LISTA PHP


você quer exibir os boletos direto em pdf certo?

que gambiarra heim amigo!!! 

mas vamos lá, essa dica também é uma gambi rsrs mas vai resolver seu problema por enquanto...

você também pode falar para seu cliente editar as margens no chrome antes de imprimir, deixa tudo 0 que o codigo de barras sai normalmente.

sendo assim, o arquivo que exibe o boleto(vc disse que precisa estar logado).
<?php

$html=file_get_contents(boletos.php?boletos=boleto1;boleto2;boleto3 ...);//considerando que boletos.php é o arquivo que exibe o html dos boletos

//detalhe, se precisar de autenticação no arquivo boletos.php veja no google sobre file_get_contents post para enviar a autenticação no cabeçalho da requisição

include("../mpdf.php");
$mpdf=new mPDF('c'); 

$mpdf->WriteHTML($html);
$mpdf->Output();
exit;

?>



Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para listaphp+u...@googlegroups.com.

Para mais opções, acesse https://groups.google.com/d/optout.

--
--
============================================================
JQUERY MAGAZINE > http://www.jquerymagazine.com.br
--
PHP MAGAZINE > http://www.phpmagazine.com.br
--
LISTA NODE.JS > https://groups.google.com/group/lista-nodejs?hl=pt-br
--
AJAX-BRASIL > http://groups.google.com/group/ajax-brasil
--
PYTHON-GOOGLE > http://groups.google.com.br/group/python-google
--
DOTNET-BRASIL > http://groups.google.com.br/group/dotnet_br
============================================================

---
Você recebeu essa mensagem porque está inscrito no grupo "LISTA PHP" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para listaphp+u...@googlegroups.com.

Orlei Pombeiro

unread,
Aug 16, 2017, 2:04:15 PM8/16/17
to LISTA PHP
Olá Deson,


Criei vários modelos de boletos em php a partir do BoletosPhp. É possível gerar em pdf no navegador, fazer download, enviar por email, fazer vários em um único arquivo.

Vale a pena a leitura desta biblioteca.

Alexandre890

unread,
Aug 17, 2017, 12:36:54 AM8/17/17
to LISTA PHP
Amigo, não sei se te ajuda mas a correção do código de barras na pré-visualização da impressão e na impressão via Google Chrome tem solução. Faça o seguinte:

CORRIGIR O PROBLEMA NA VISUALIZAÇÃO DO CÓDIGO DE BARRAS NO CHROME OU CHROMIUM


Recentemente temos observado que o Google Chrome/Chromium tem apresentado problema na hora de imprimir ou visualizar a impressão do código de barras dos boletos quando teclamos o CTRL+P ou mandamos imprimir. O código de barras na página em HTML aparece perfeitamente normal com suas regras de CSS e etc, mas dá um espaçamento muito grande entre as linhas do código de barras quando se tenta visualizar impressão ou imprimir.


Todos os boletos do projeto BoletoPHP possuem um arquivo chamado layout_<nome_do_banco.php para cada um de seus bancos disponibilizado, portanto, para resolver o problema, edite o arquivo de layout do seu banco conforme mostrado abaixo:


Por Exemplo, iremos corrigir o layout dos boletos do BB:


Arquivo a ser editado:
layout_bb.php ou… layout_<seu_banco>


Comente a chamada a função barcode como mostrado abaixo:

fbarcode($dadosboleto["codigo_barras"]);


Agora, no seu lugar, insira substituindo-a por:

echo "<img src=\"include/boleto_barcode.php?codigo=".$dadosboleto["codigo_barras"]."\">";


Obs:

Não esquecer de deixar o arquivo boleto_barcode.php dentro da pasta INCLUDE do sistema para que os boletos possam encontrá-lo.


Fonte:
https://github.com/agenciageneral/codigo_barras_i25_boleto


Bruno Pitteli Gonçalves

Londrina - PR

http://bruno.pitteli.com.br/

@scorninpc


Em segunda-feira, 5 de junho de 2017 19:21:30 UTC-3, Deson escreveu:
boleto_barcode.php

Ederson Pereira de Brito

unread,
Aug 17, 2017, 1:24:27 PM8/17/17
to list...@googlegroups.com
Alexandre me parece uma boa alternativa esta solução, vou testar.
Obrigado


--
--
============================================================
JQUERY MAGAZINE > http://www.jquerymagazine.com.br
--
PHP MAGAZINE > http://www.phpmagazine.com.br
--
LISTA NODE.JS > https://groups.google.com/group/lista-nodejs?hl=pt-br
--
AJAX-BRASIL > http://groups.google.com/group/ajax-brasil
--
PYTHON-GOOGLE > http://groups.google.com.br/group/python-google
--
DOTNET-BRASIL > http://groups.google.com.br/group/dotnet_br
============================================================

---
Você recebeu essa mensagem porque está inscrito no grupo "LISTA PHP" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para listaphp+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages