ragazzi ho un problema serio.
sto facendo un file pdf con php con le fpdf.
uso la multicell e devo fare 4 colonne su un foglio a4
in ogni multicell c'è una farse. quando arrivo a fine colonna se tutta la colonna non ci sta calcolo quanto occupa in punti quella frase, metto quello che ci sta e poi metto il resto in altra colonna riconsegnando la Y e la X.
il mio problema è che io calcolo quanto è larga una riga ma in multicell il giustifica (o anche l'allinea a sinistra) mi aumenta lo spoazio per far quadrare il testo: il risultato è che l'ultima riga della colonna invece di finire a fine riga mi finisce magari a metà riga o poco di più e no è gradevole.
i lcodice è questo:
$larghezza=$pdf->GetStringWidth($vaRow[ANNUNCIO]);
//echo $larghezza." larghezzainpunti
";
$y=$pdf->GetY();
if(($larghezza/40*2.3)+$y>270)
{
$numerorighe=(270-$y)/2.3;
$giro=0;
$fraseultima="";
while($giro<($numerorighe*43))
{
// $frase$giro=$vaRow[ANNUNCIO]{$giro};
$fraseultima=$fraseultima.$vaRow[ANNUNCIO]{$giro};
$giro++;
echo $giro."
";
}
//echo $fraseultima."prima
";
$pdf->MultiCell(40, 2.3,$y.$fraseultima,'1',J,'0');
$fraseultima="";
while($giro<$larghezza)
{
// $frase$giro=$vaRow[ANNUNCIO]{$giro};
$fraseultima=$fraseultima.$vaRow[ANNUNCIO]{$giro};
$giro++;
echo $giro."-2°
";
}
//echo $fraseultima."seconda
";
//qui devo fargli inserire una parte di annuncio
$contatore2++;
$colonna=$colonna+45;
$riga=19;
$contatore=1;
if($contatore2>4)
{
$pdf->AddPage();
$riga=19;
$colonna=10;
$contatore=1;
$contatore2=1;
$pagina++;
//qui devo fargli inserire la seconda parte dell'annuncio
}
$pdf->SetY($riga);
$pdf->SetX($colonna);
$y=$pdf->GetY();
$pdf->MultiCell(40, 2.3,$y.$fraseultima,'1',J,'0');
}
$y=$pdf->GetY();
$x=$pdf->GetX();
$pdf->SetX($colonna);
$pdf->MultiCell(40, 2.3,$y.$vaRow[ANNUNCIO],'1',J,'0');
}
però logicamente la larghezza calcolata non è rispettata dal multicell ch emi adatta il testo
se riuscite...