+10

Criando relatórios no formato PDF

criado por Cléver Anjos em 06/07/2002 1:58pm
Já utilizei 2 bibliotecas para criação de arquivos PDF.

a) A PDFlib [ disponível em http://www.pdflib.com ] é uma excelente e rápida biblioteca escrita em C e compatível com a maioria das linguagens (utilizei-a em Perl na verdade). A única desvantagem é que é comercial, obrigando você a adquirir uma licença se for utilizá-la comercialmente.

b) A classe FPDF [ disponível em http://www.fpdf.org ] é uma classe desenvolvida em PHP, rápida o suficiente todas as vezes que eu a utilizei e tem os métodos necessários para fazer os relatórios que precisei. E é FREE. Por isso vou utilizar essa classe no artigo.

Você pode também escrever a sua própria biblioteca. Nesse caso, boa sorte e dê uma olhada nesse manual

http://support.adobe.com/devsup/devsup.nsf/acrobatkb.htm?OpenView&Start=1&Count=200&Expand=4.6#4.6

Comentários:

Mostrando 1 - 10 de 93 comentários
Alexandre disse:
Ola, parabens pelo post. Mas como faço para quando gerar o relatório a pessoa possa fazer o download? outra coisa quando tento colocar uma imagem da o seguinte erro:
FPDF error: Alpha channel not supported: C:/xampp/htdocs/imaster/110/linha.png

Help-me please.

Alexandre P. Menezes
15/03/2010 12:14pm (~6 anos atrás)

José Walter disse:
Como crio um relatório dinâmico... onde o arquivo que gera o FPDF receba uma variável de um form pelo método POST ou GET e faz a consulta no Banco de dados...? Atualmente eu consigo gerar um relatório com o FPDF, mas a condição da consulta é um valor fixo, predeterminado... EX.: a consulta é SELECT * FROM ALUNOS WHERE ALUNOS = "MARIA"... gostaria de usar WHERE ALUNOS = "$nome"... onde $nome é uma variável recebida pelo método POST de um formulário... Grato!
23/04/2009 12:36pm (~7 anos atrás)

Welton Alves disse:
Estou com problemas de acentuação...

Faço uma pesquisa no BD e quando imprimo os dados em pdf, no lugar das letras acentuadas aparecem caracteres estranhos...
Estou usando SQL SERVER

Alguém tem alguma dica????
09/08/2006 5:59pm (~10 anos atrás)

Minoria,
Eu tinha o mesmo problema e resolvi editando o arquivo .php
e retirei o caracter enter e espaços após o ultimo comando "?>"
01/06/2006 7:42am (~10 anos atrás)


Alguem poderia me ajudar? Não sei como resolver este erro.

Warning: Cannot modify header information - headers already sent by (output started at /srv/www/htdocs/plancap/consulta.php:3) in /srv/www/htdocs/plancap/fpdf/fpdf.php on line 1022
FPDF error: Some data has already been output to browser, can't send PDF file
19/05/2006 11:11am (~10 anos atrás)

Olá pessoal,
Gostaria de saber como faço para inserir uma imagem gerada com a JpGraph num pdf gerado com a pdflib.
<?php

$graph = new Graph(...);

// Code to create the graph
// .........................
// .........................

// Put the image in a PDF page
$im = $graph->Stroke(_IMG_HANDLER);

$pdf = pdf_new();
pdf_open_file($pdf, "");

// Convert the GD image to somehing the
// PDFlibrary knows how to handle
$pimg = pdf_open_memory_image($pdf, $im);

pdf_begin_page($pdf, 595, 842);
pdf_add_outline($pdf, "Page 1");
pdf_place_image($pdf, $pimg, 0, 500, 1);
pdf_close_image($pdf, $pimg);
pdf_end_page($pdf);
pdf_close($pdf);

$buf = pdf_get_buffer($pdf);
$len = strlen($buf);

header("Content-type: application/pdf");
header("Content-Length: $len");
header("Content-Disposition: inline; filename=foo.pdf");

echo $buf;

pdf_delete($pdf);

?>

Está acontecendo o seguinte erro:
Fatal error: Call to undefined function: pdf_open_memory_image()

Estou usando php 4.3.10
JpGraph v1.20.2
PDFlib GmbH 6.0.p1

O está acontecendo?
10/05/2006 1:50pm (~10 anos atrás)

Ola!
Tenho um sistema em php, adorei seu artigo auterei os meus relatorios para pdf.
fiz todos os seu passos,mas nao aparece nada no meu browser, nem com o adobe aberto simplimente a tela fica em branco. Tive a ideia de instalar o dabe mais recente em algumas máquinas e fazer aceso ao meu sistema. com o reader 5.0 nada aparece, com o 6.0 nada aparece só funcionou no 7.0, porem não posso trabalahr com ele pois meu cliente não tem maquina para isso preciso q funcione no 5.0 o que pode estar errado?
10/04/2006 11:36am (~10 anos atrás)

mt bom artigo, parabens, consegui gerar alguns relatorios em pdf estudando seu artigo.

a minha dúvida é a seguinte: qual a sintaxe para colocar negrito, italico, sublinhado no meio de uma multicell, pegando apenas parte dela para formatar.
por exemlo: o negrito do html


valeu!
09/03/2006 4:52am (~10 anos atrás)

Rogger Lima disse:
Ola Clever, cara, estou com um probleminha, muitas vezes o conteudo das celulas "estoura" as margens e ele nao quebra a linha, existe alguma configuração para ser feita pra sanar esse problema ou alguma sijestao de como resolver isso??
obrigado!!!
obs: excelente tutorial!!!!
18/01/2006 5:10am (~11 anos atrás)

Ae Clever,
somente para comentar... Seu tutorial ajudou e está ajudando e muito a criação de relatórios em PDF. Tendo como ponto de partida seu tutorial, já brinquei e muito com a geração de PDF´s.

Excelente tutorial.
Valeu.
03/11/2005 7:15am (~11 anos atrás)

Novo Comentário:

(Você pode usar tags como <b>, <i> ou <code>. URLs serão convertidas para links automaticamente.)