Ver Mensaje Individual
  #3 (permalink)  
Antiguo 04/10/2012, 13:16
Sirrohan
 
Fecha de Ingreso: julio-2010
Mensajes: 275
Antigüedad: 13 años, 10 meses
Puntos: 21
Respuesta: Ajuste del alto de celdas con TCPDF

Bueno amigos, ya pude solucionar lo planteado...

Tuve que combinar las funciones Cell() y MultiCell() de la clase TCPDF...

la clase quedó algo así...

Código PHP:
Ver original
  1. public function ColoredTable($header,$data,$informes)
  2. {
  3.     $pdf->SetFillColor(255, 0, 0);
  4.     $pdf->SetTextColor(255);
  5.     $pdf->SetDrawColor(128, 0, 0);
  6.     $pdf->SetLineWidth(0.3);
  7.     $pdf->SetFont('', 'B');
  8.     // Header
  9.     $w = array(30, 25, 95, 30);
  10.     $num_headers = count($header);
  11.     for($i = 0; $i < $num_headers; ++$i) {
  12.         $pdf->Cell($w[$i], 7, $header[$i], 1, 0, 'C', 1);
  13.     }
  14.     $pdf->Ln();
  15.     // Color and font restoration
  16.     $pdf->SetFillColor(224, 235, 255);
  17.     $pdf->SetTextColor(0);
  18.     $pdf->SetFont('');
  19.     // Data
  20.     //Parametros para las funciones Cell () y MultiCell()
  21.     $fill = 1;
  22.     $border='LTR';
  23.     $ln=0;
  24.     $fill = 0;
  25.     $align='T';
  26.     $link=0;
  27.     $stretch=0;
  28.     $ignore_min_height=0;
  29.     $calign='T';
  30.     $valign='T';
  31.     $height=6;//alto de cada columna
  32.     while($data = $informes->asociar($con)) {
  33.         $ancho=95;
  34.         $altura=9.5;
  35.         $cantidad_lineas= strlen($data["descripcion"]);
  36.         if($cantidad_lineas > $ancho)
  37.         {
  38.             $cant_espacios = $cantidad_lineas/$ancho;
  39.             $rendondear=round($cant_espacios,2);
  40.             $altura=$altura*$rendondear;
  41.         }//Fin del iff
  42.            
  43.         $pdf->Cell(30, $altura, $data["componente_pendencia"], $border,$ln,$align,$fill,$link,$stretch,$ignore_min_height,$calign,$valign);
  44.         $pdf->Cell(25, $altura, $data["fecha_inicio_pendencia"],$border,$ln,$align,$fill,$link,$stretch,$ignore_min_height,$calign,$valign);
  45.         $pdf->MultiCell($ancho, $altura, $data["descripcion"],$border,$align,$fill,$ln);
  46.         $pdf->Cell(30, $altura, $data["estatus"],$border,$ln,$align,$fill,$link,$stretch,$ignore_min_height,$calign,$valign);
  47.         $pdf->Ln();
  48.         $fill=!$fill;
  49.     }//Fin del while
  50.     $pdf->Cell(array_sum($w), 0, '', 'T');
  51. }//Fin de la clase

Espero que le sea de utilidad a alguien en el futuro... Y se encuentre con uan situación parecida.