Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal, estou com um problema ao gerar o PDF através da classe FPDF, estou listando um relatório de naturezas de gastos, que vai da natureza 1 até a 1817, é um relatório meio demorado por acessar muitas tabelas. Se eu fazer a consulta da natureza 1 até a natureza 1501 e gerar o PDF, funciona perfeitamente, mas se eu tirar de naturezas além da 1501 e for gerar o PDF, retorna o erro "O arquivo não começa com '%PDF-'" e não gera o arquivo.
Existe algum limite de bytes no FPDF?? precisa mudar alguma configuração ??
Se alguém puder me ajudar eu agradeço
o código da página que gera o PDF é o seguinte:
<?
ob_start();
session_start();
$arr = $_SESSION['ImpPdf'];
$por_pagina = 17;
$linhas = count($arr);$paginas = ceil($linhas/$por_pagina);
define('FPDF_FONTPATH','fpdf/font/');
require_once("fpdf/fpdf.php");
class PDF extends FPDF {
function Header(){
$data = date("d/m/Y");
$dtAux = "DATA: ".$data;
$hora = date("H:m:s");
$hrAux = "HORA: ".$hora;
// DATA
$this->SetFont('Arial','B',12);
$this->SetY("14");
$this->SetX("10");
$this->Cell(0,0,$dtAux,0,0,'L');
//HORA
$this->SetY("19");
$this->SetX("10");
$this->Cell(0,0,$hrAux,0,0,'L');
// TITULO
$this->SetFont('Arial','B',18);
$this->SetY("19");
$this->SetX("30");
$this->Cell(0,0,'ORÇADOS x REALIZADO'.' - ',0,0,'C');
//LINHA
$this->SetY("30");
$this->SetX("10");
$this->SetLineWidth(0.5);
$this->Line(300,25,0,25);
}
function Footer(){ // CRIANDO UM RODAPE
$this->SetFont('Arial','',10);
$this->Cell(70,8,'Assinatura ','T',0,'L');
$this->Cell(40,8,' ',0,0,'L');
$this->Cell(70,8,'Assinatura','T',0,'L');
$this->Ln();
}
}
$pdf = new PDF();
$linha_atual = 0;
$inicio = 0;
//PÁGINAS
for($x=1; $x<=$paginas; $x++) {
$zebrado = 1;
$inicio = $linha_atual;
$fim = $linha_atual + $por_pagina;
if($fim > $linhas) $fim = $linhas;
$pdf->Open();
$pdf->AddPage('L','A4');
$pdf->SetFont("Arial", "B", 12);
$pdf->Ln(2);
$pdf->SetY("10");
$pdf->Cell(285, 8, "Página $x de $paginas", 0, 0, 'R');
//QUEBRA DE LINHA
$pdf->Ln(15);
//MONTA O CABEÇALHO
$pdf->SetFont("Arial", "B", 15);
$pdf->Cell( 20, 8, "Codigo", "R", 0, 'L');
$pdf->Cell(90, 8, "Desc. Natureza", "R", 0, 'L');
$pdf->Cell(100, 8, "", 0, 1, 'L');
//LINHA
$pdf->SetLineWidth(0.5);
$pdf->Line(300,33,0,33);
//EXIBE OS REGISTROS
$pdf->SetY("33");
for($i=$inicio; $i<$fim; $i++) {
$pdf->SetFont("Arial", "B", 12);
$pdf->SetLineWidth(0.2);
if ($zebrado == 1) {
$pdf->SetFillColor(225,225,225);
$pdf->Cell( 20, 8, $arr[$i][1], 1, 0, 'L',true);
$pdf->Cell(90, 8, $arr[$i][2], 1, 0, 'L',true);
$pdf->Cell(100, 8, "", 1, 1, 'L',true);
$zebrado = 0;
} else {
$pdf->Cell( 20, 8, $arr[$i][1], 1, 0, 'L');
$pdf->Cell(90, 8, $arr[$i][2], 1, 0, 'L');
$pdf->Cell(100, 8, "", 1, 1, 'L');
$zebrado =1;
};
$linha_atual++;
}//FECHA FOR(REGISTROS - i)$pdf->Output();
?>Carregando comentários...