Como alterar o Header e Footer em PDF? Como fazer um Header e o Footer, sem ter que alterar direto no FPDF ?...
JH
Como alterar o Header e Footer em PDF?  
Fechado
Como fazer um Header e o Footer, sem ter que alterar direto no FPDF ?

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (9)


RC

Este artigo vai te ajudar:
www.adianti.com.br/forum/pt/view_851?criando-cabecalhos-e-rodapes-no
JH

mesmo não usando o PDFDesigner ainda posso usar esses dois metodos ?
FC

Pode sim copie essa classe e cole em app/lib

depois é só chamar

$desiner = new TPDFDesigner;

que virá já com o cabeçalho e rodapé...


Abraços
FC

Perdão coloquei errado, é $designer = new TReportHeaderFooter;
PD

Basta chamar o método getNativeWriter() sobre o objeto da classe TTableWriterPDF:

$fpdf = $writer->getNativeWriter();

E em seguida definir o método que irá desenhar o header:

$fpdf->setHeaderCallback( array($this, 'drawHeader') );

Att,
Pablo
LC

Cabeçalho não aparece na primeira pagina ??
Tem uma dica do Pablo no outro post para chamar na mão, mais não consegui.
LC

Já consegui, kkkkkkk.
Estou usando o relatório tabular, então meu código ficou assim:

 
  1. <?php
  2. switch ($format)
  3. {
  4. case 'html':
  5. $tr = new TTableWriterHTML($widths);
  6. break;
  7. case 'pdf':
  8. $tr = new TTableWriterPDF($widths);
  9. $fpdf = $tr->getNativeWriter();
  10. $fpdf->setHeaderCallback(array($this,'Cabecalho'));
  11. $this->Cabecalho($fpdf);
  12. //$fpdf->setFooterCallback(array($this,'Rodape'));
  13. break;
  14. case 'rtf':
  15. if (!class_exists('PHPRtfLite_Autoloader'))
  16. {
  17. PHPRtfLite::registerAutoloader();
  18. }
  19. $tr = new TTableWriterRTF($widths);
  20. break;
  21. }
  22. ?>

DI

Leandro de onde veio essa função Cabecalho? : $this->Cabecalho($fpdf);
LC

Daniel eu criei uma função chamada cabeçalho, dentro dela eu uso o $pdf-> para criar as coisas, exemplo:
 
  1. <?php
  2. //Cabeçalho
  3. function Cabecalho($pdf)
  4. {
  5. $pdf->AliasNbPages();
  6. $pdf->Image(TSession::getValue('logo_empresa_rel'),30,25,100);
  7. //$pdf->Image('app/images/nome-da-imagem.jpg',30,25,100);
  8. $pdf->SetFont('Arial','B',10);
  9. // Move to the right
  10. $pdf->Cell(110);
  11. // Title
  12. $pdf->Cell(50,10,utf8_decode($this->nome_modelo_dados->fantasia),0,0,'L');
  13. $pdf->Ln();
  14. $pdf->SetFont('');
  15. $pdf->Cell(110);
  16. $pdf->Cell(50,10,utf8_decode($this->nome_modelo_dados->endereco) . ' - ' . utf8_decode($this->nome_modelo_dados->bairro),0,0,'L');
  17. $pdf->Ln();
  18. $pdf->Cell(110);
  19. $pdf->Cell(50,10,$this->nome_modelo_dados->cep . ' - ' . utf8_decode($this->nome_modelo_dados->cidade) . '/' . $this->nome_modelo_dados->uf,0,0,'L');
  20. $pdf->Ln();
  21. $pdf->Cell(110);
  22. $pdf->Cell(50,10,'CNPJ',0,0,'L');
  23. $pdf->Cell(411,10,utf8_decode('Página: ').$pdf->PageNo().' de {nb}',0,0,'R');
  24. $pdf->Ln();
  25. $pdf->Cell(110);
  26. $pdf->SetFont('Arial','B',10);
  27. $pdf->Cell(50,10,$this->nome_modelo_dados->fones,0,0,'L');
  28. $pdf->SetFont('');
  29. $pdf->Cell(400,10,utf8_decode('Data Emissão'),0,0,'R');
  30. $pdf->Ln();
  31. $pdf->Cell(110);
  32. $pdf->Cell(50,15,$this->nome_modelo_dados->email . ' ' . $this->nome_modelo_dados->site,0,0,'L');
  33. $pdf->Cell(400,15,date('d/m/Y'),0,0,'R');
  34. // Line break
  35. $pdf->Ln();
  36. $pdf->Cell(560,5,'','T',0,'L');
  37. $pdf->Ln();
  38. }
  39. ?>