Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

manolegal

Multicell Fpdf

Recommended Posts

Bom dia amigos.

Em uma multicell do fPdf vou mostrar um texto que vem do BD que pode ter vários parágrafos (tamanho indefinido e variado).

O problema que neste relatório irei mostrar outros campos abaixo desta multicell.

Se o texto desta multicell for muito extenso, vai "ocupar" o espaço dos campos que estão abaixo da multicell.

Minha idéia não é limitar o tamanho do campo a ser gravado no BD.

Como faço para resolver este problema?

    $pdf->SetFont('Arial', '', 10);
    $pdf->SetXY(20,75);
    $pdf->MultiCell(0, 5, utf8_decode($texto_multicell),0,'J');

$pdf->ln(1);   //Pula 1 linha            
    $pdf->SetFont('Arial', 'B', 10);
    $pdf->SetXY(20,155);
    $pdf->MultiCell(160, 5, utf8_decode("Despesas Mensais: "),0,'L');

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Bom dia amigos.

Em uma multicell do fPdf vou mostrar um texto que vem do BD que pode ter vários parágrafos (tamanho indefinido e variado).

O problema que neste relatório irei mostrar outros campos abaixo desta multicell.

Se o texto desta multicell for muito extenso, vai "ocupar" o espaço dos campos que estão abaixo da multicell.

Minha idéia não é limitar o tamanho do campo a ser gravado no BD.

Como faço para resolver este problema?

    $pdf->SetFont('Arial', '', 10);
    $pdf->SetXY(20,75);
    $pdf->MultiCell(0, 5, utf8_decode($texto_multicell),0,'J');

$pdf->ln(1);   //Pula 1 linha            
    $pdf->SetFont('Arial', 'B', 10);
    $pdf->SetXY(20,155);
    $pdf->MultiCell(160, 5, utf8_decode("Despesas Mensais: "),0,'L');

Tenta deixa o

 

$pdf->Ln();

 

sem valor

 

se não resolver use essa função

 

function Footer() {
$this->Cell(0,0,'','T',0,'C');
$this->SetY(-20);
$this->SetFont('Times','I',8);
$this->Cell(0,10,
utf8_decode('Página ').$this->PageNo().'/{nb}','0',0,'C');
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

thiagomngomes

Tentei das 02 maneiras sugeridas mas não resolveu o problemar.

 

tiagofelipebones

Na verdade este campo pode ser pequeno ou extenso. Se for muito extenso ele vai subscrever campos que estão abaixo deles.

O que preciso é uma forma de manter o espaço entre este campo e o campo subsequente logo abaixo dele.

 

Desde já, obrigado pelo retorno.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não adianta pular uma linha se você logo em seguida chama:

$pdf->SetXY(20,155);

Isto seta a posição absoluta de onde o próximo item vai ser colocado.



Troque por

$pdf->SetX(20);

Compartilhar este post


Link para o post
Compartilhar em outros sites

hufersil

Funcionou corretamente. Só que fiquei com a seguinte dúvida:

Abaixo deste campo, como faço para colocar 02 campos na mesma linha?

No exemplo abaixo, gostaria que ambos os campos ficassem na mesma linha, mas estão ficando em linhas diferentes.

$pdf->ln()      
    $pdf->SetFont('Arial', 'B', 10);
    $pdf->SetX(20);
    $pdf->MultiCell(80, 5, utf8_decode("Texto_1: "),0,'L');
    $pdf->SetFont('Arial', 'B', 10);
    $pdf->SetX(130);
    $pdf->MultiCell(80, 5, utf8_decode("Texto_2: "),0,'L');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido

Troquei $pdf->MultiCell(80, 5, utf8_decode("Texto_1: "),0,'L'); por $pdf->Cell(80, 5, utf8_decode("Texto_1: "),0,'L');

e consegui resolver.

 

Obrigado a todos pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.