Gerar PDF

Olá a todos …

vamo nessa rima agora …

Alguém aqui já criou algum sistema ou site que gera informações em PDF.

achei o conteúdo que existe na documentação muito zuado, e esse lance de

ficar baixando outros trecos é tenso …

preciso de recomendações e dicas

obrigado a todos! :D

Olha eu já criei, utilizei o EzPdf, como não achei um componente que integrava ele fiz todas as funções dentro do controller. Só lembrando que na hora de importar ele pro framework desativei o autoload do Yii.

Tava com dúvida no que exatamente?

Opa!

Nas vezes que precisei de PDF utilizei a classe mPDF (http://mpdf1.com), achei d+, e funcionou perfeitamente para as situações que passei, baixei diretamente do site e fiz referencia no projeto.

Existe essa extensão para o Yii http://www.yiiframework.com/extension/pdf, os votos são positivo, creio q seja uma boa alternativa, não utilizei ainda porque a classe mPDF está na versão 5.4 e até o momento a extensão está com a versão 5.3 da classe.

O q posso dizer é isso. Quando achar a melhor solução para seu caso não deixe de postar.

Flws!

:wq

Como eu nunca mexi com isso, a minha duvida seria mesmo uma dica de qual gerador de PDF usar …

os que tem no forum … estão todos bugados ou mal implementado …

em fim

valeu a dica!

Thiago … esse mPDF eu nem tentei usar pois vi uma galera chorando na lista falando que ele não funcionava no

firefox …

e ninguém apresentou nenhuma solução …

seria bacana vc demonstrar seu caso ae pra galera …

att,

Alguém já usou o domPDF ?????

me parece ser bem bacana esse cara …

Com o mPDF:

  • Converto boletos gerados pelo BoletoPhp.

  • Gero certificado para cursos de educação a distância.

Acesse página de exemplo do mPDF (http://www.mpdf1.com/mpdf/examples) faça o testedrive com o Firefox.

Se quiser, tem tb um projeto que estou trabalhando, inscreva-se com dados fictícios, no final poderá gerar o PDF do boleto http://thlmo.net76.net/ciegesi

Flws.

:wq

já mexeu com jasper?

eu fiz essa extensão: http://www.yiiframework.com/extension/jasphp/

se te ajudar!

obrigado

Caso nao precise de pdfs complexo e vc ja usou o jasper vc pode usar a extensao ireport que e um outra aternativa.

@Thiago Luís

vc que usa o MPdf, quando eu gero ele em uma pasta ele fica em branco o que deve ser?


$html = $this->renderPartial('print',array(

	'texto'		=> $consulta->ds_texto_consulta,

	'chave'		=> base64_decode($consulta->cd_chave_consulta),

	'model'		=> $model,

));

		

		

Yii::import('application.extensions.yii-pdf.*');

define('MPDF_PATH', 'mpdf/');

include(MPDF_PATH.'mpdf.php');

		

$mpdf = new mPDF('','A4');

		

$mpdf->allow_charset_conversion = true;

$mpdf->charset_in='iso-8859-1';


$mpdf->WriteHTML($html, false);

// define um nome para o arquivo PDF


$arquivo = date("ymdhis").'_projeto_li.pdf';


$mpdf->Output("pdf/".$arquivo,"F");

		

$this->redirect(Yii::app()->params['url_aplicacao'] ."/frontend/pdf/".$arquivo);

Radames_, ta ae o teste que fiz:




public function actionTestePdf(){

		require_once('protected/extensions/MPDF54/mpdf.php');

		$mpdf = new mPDF('', 'A4');

		$mpdf->allow_charset_conversion = true;

		$mpdf->charset_in='iso-8859-1';

		$mpdf->WriteHTML('<h1>TESTE</h1>',false);

		$mpdf->Output('pdfs/'.date("ymdhis").'_teste.pdf', 'F');

		$this->redirect('index');

}



A única diferença q identifiquei é a forma que importo a biblioteca, eu apenas descompacto dentro de extensions e faço a chamada.

Tentei passar os mesmos parâmetros que vc passou para a classe, aqui o arquivo foi criado normalmente. Se vc identificar outra forma para teste, informa que analiso.

Flw!

Então @Thiago Luís

fiz algumas mudanças básicas que funcionaram …

aqui a empresa usa como padrão ISO-8859-1 (uma merda)

ai converti o texto usando isso …


$html = iconv("ISO-8859-1", "UTF-8", $html);

e para exibir o texto no pdf que estava sendo gerado em branco

no renderPartial eu coloquei "true,true" assim :




$html = $this->renderPartial('print',array(

	'texto'		=> $consulta->ds_texto_consulta,

	'chave'		=> base64_decode($consulta->cd_chave_consulta),

	'model'		=> $model,

), true, true);



ai funcionou perfeitamente …

A tem mais

na minha action eu deixei setado isso por via das duvidas …


ini_set("memory_limit","1G");

ausência de memoria também gera pdf em branco

Bom saber desses detalhes…

Passei despercebido pelo renderPartial, é sempre importante observar esses parâmetros que vc identificou.

Flw!

Eu ia comentar isto para você antes, toda vez que gerar um PDF, executa o print_r($html); exit(); depois da variavel, para ver se está retornando corretamente os dados.

Então Newerton

como eu uso essa render em outro local e lá funcionava normalmente, nem passava na minha

mente printar essas informações …

ai depois eu lembrei do lance de usar o ‘false,true’ ou ‘true,true’ no renderPartial …

mas fica a dica ae então pra todos!

Olá pessoal,

Eu uso a biblioteca html2pdf para converter de html para pdf,mas estou com um problemão.

Quando os dados da tabela em html ultrapassa uma página a tabela é cortada, no limite da página.

Queria saber se alguém sabe de alguma biblioteca que permita converter o html para pdf e possa criar várias páginas.

Olá Marcos, não utilizei o html2pdf ainda, mas veja se essas regras no CSS resolvem seu problema:

Até +

experimentem a extensão pdf-grid eu já fiz alguns testes e pareceu-me muito simples de implementar.

É semelhante a usar um cgridview, apenas colocamos quais as colunas a incluir e tamanho de cada coluna, depois para modificações extra podem ser introduzidos outros parâmetros (tamanho da folha, etc).

Recomendo!