]> git.llucax.com Git - mecon/meconlib.git/commitdiff
PDF en camino
authorMartín Marrese <marrese@gmail.com>
Mon, 3 Nov 2003 23:15:42 +0000 (23:15 +0000)
committerMartín Marrese <marrese@gmail.com>
Mon, 3 Nov 2003 23:15:42 +0000 (23:15 +0000)
lib/MECON/PDF.php
lib/MECON/PDF/Marco.php
lib/MECON/PDF/Marco/medidas.php
lib/MECON/PDF/Tabla.php
test/PDF/downs/prueba_pdf.pdf
test/PDF/prueba_pdf.php

index 08250ecaa5637e28040f0112080b65ef4f779b5a..bbd2ed8675a4d1cf160a0af9df1a6e8821b877b5 100644 (file)
@@ -196,6 +196,20 @@ class MECON_PDF {
         return $this->_pdf->wrap_line ($texto, $l_max, $attr);
     }
 
         return $this->_pdf->wrap_line ($texto, $l_max, $attr);
     }
 
+    /**
+     * Funcion que wrappea una linea.                                       
+     *
+     * @param strgin $texto Texto que quiere wrappearse.
+     * @param int    $l_max Largo maximo del texto.
+     * @param array  $attr  Atributos del texto.
+     *
+     * @return string
+     * @access public
+     */
+    function wordWrap($texto, $l_max, $attr) {
+        return $this->_pdf->word_wrap ($texto, $l_max, $attr);
+    }
+    
     /**
      * Funcion que calcula cuanto va a ocupar cierto texto segun su formato en
      * una pagina.
     /**
      * Funcion que calcula cuanto va a ocupar cierto texto segun su formato en
      * una pagina.
index 8d7097613ec73adb7812b9390bb80a21fb87bd5d..397a5ae072a5ed5045f6d02ac75e54b7137b3072 100644 (file)
@@ -44,7 +44,7 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @var array $conf
      * @access protected
      */
      * @var array $conf
      * @access protected
      */
-    var $_conf = array ();
+    var $_config = array ();
 
     /**
      * Tamanio de las paginas.
 
     /**
      * Tamanio de las paginas.
@@ -124,8 +124,9 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
         $this->_pdf =& new MECON_PDF;
         $this->_tamanio = $tam;
         $this->_orientacion = $ori;
         $this->_pdf =& new MECON_PDF;
         $this->_tamanio = $tam;
         $this->_orientacion = $ori;
-        $this->_conf = include 'MECON/PDF/Marco/medidas.php' ; 
-        $this->_conf = $this->_conf[$tam][$ori];
+        $this->_config = include 'MECON/PDF/Marco/medidas.php' ; 
+        $this->_config = $this->_config[$tam][$ori];
+        $this->MECON_HTML_Tabla();
     }
 
     /**
     }
 
     /**
@@ -135,7 +136,7 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @access protected
      */
     function _addLogo() {
      * @access protected
      */
     function _addLogo() {
-        $conf = $this->_conf['encabezado'];
+        $conf = $this->_config['encabezado'];
         if ($this->logo) {
             $this->_pdf->addImage($this->logo, $conf['logo']['X'],
                     $conf['logo']['Y'], null, 'jpg');
         if ($this->logo) {
             $this->_pdf->addImage($this->logo, $conf['logo']['X'],
                     $conf['logo']['Y'], null, 'jpg');
@@ -149,7 +150,7 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @access protected
      */
     function _addSeccion() {
      * @access protected
      */
     function _addSeccion() {
-        $conf = $this->_conf['encabezado'];
+        $conf = $this->_config['encabezado'];
         if ($this->seccion) {
             $tmp = $this->_pdf->strlen($this->seccion, $conf['seccion']);
             $tmp2 = $conf['linea2']['Xi'] - $conf['linea1']['Xi'];
         if ($this->seccion) {
             $tmp = $this->_pdf->strlen($this->seccion, $conf['seccion']);
             $tmp2 = $conf['linea2']['Xi'] - $conf['linea1']['Xi'];
@@ -171,7 +172,7 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @access protected
      */
     function _addSubSeccion() {
      * @access protected
      */
     function _addSubSeccion() {
-        $conf = $this->_conf['encabezado'];
+        $conf = $this->_config['encabezado'];
         if ($this->subseccion) {
             $tmp = $this->_pdf->strlen($this->subseccion, $conf['subseccion']);
             $tmp2 = $conf['linea2']['Xi'] - $conf['linea1']['Xi'];
         if ($this->subseccion) {
             $tmp = $this->_pdf->strlen($this->subseccion, $conf['subseccion']);
             $tmp2 = $conf['linea2']['Xi'] - $conf['linea1']['Xi'];
@@ -194,7 +195,7 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @access protected
      */
     function _addPager() {
      * @access protected
      */
     function _addPager() {
-        $conf = $this->_conf['encabezado'];
+        $conf = $this->_config['encabezado'];
         if ($this->paginador) {
             $txt = 'Pagina '.$this->_pdf->numPage().' de '.
                 $this->_pdf->countPages();
         if ($this->paginador) {
             $txt = 'Pagina '.$this->_pdf->numPage().' de '.
                 $this->_pdf->countPages();
@@ -213,7 +214,7 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @access protected
      */
     function _addDate() {
      * @access protected
      */
     function _addDate() {
-        $conf = $this->_conf['encabezado'];
+        $conf = $this->_config['encabezado'];
         if ($this->fecha) {
             if ($this->fecha === true) {
                 $this->fecha = date("d/m/Y");
         if ($this->fecha) {
             if ($this->fecha === true) {
                 $this->fecha = date("d/m/Y");
@@ -233,7 +234,7 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @access protected
      */
     function _addHeaderRectangle() {
      * @access protected
      */
     function _addHeaderRectangle() {
-        $conf = $this->_conf['encabezado'];
+        $conf = $this->_config['encabezado'];
         //Armo el recuadro
         $this->_pdf->addRectangle ($conf['Yi'], $conf['Xi'], $conf['Yf'], 
                     $conf['Xf']);
         //Armo el recuadro
         $this->_pdf->addRectangle ($conf['Yi'], $conf['Xi'], $conf['Yf'], 
                     $conf['Xf']);
@@ -250,16 +251,16 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @access protected
      */
     function _addTitle() {
      * @access protected
      */
     function _addTitle() {
-        $conf = $this->_conf['titulo'];
+        $conf = $this->_config['titulo'];
         if ($this->titulo) {
             $tmp = $this->_pdf->strlen($this->titulo, $conf);
         if ($this->titulo) {
             $tmp = $this->_pdf->strlen($this->titulo, $conf);
-            $tmp2 = $this->_conf['Xf'] + abs($this->_conf['Xi']);
+            $tmp2 = $this->_config['Xf'] + abs($this->_config['Xi']);
             if ($tmp >= $tmp2) {
                 $this->titulo = $this->_pdf->wrapLine ($this->titulo, $tmp2,
                         $conf);
                 $tmp = $this->_pdf->strlen($this->titulo, $conf);
             }
             if ($tmp >= $tmp2) {
                 $this->titulo = $this->_pdf->wrapLine ($this->titulo, $tmp2,
                         $conf);
                 $tmp = $this->_pdf->strlen($this->titulo, $conf);
             }
-            $init = $this->_conf['Xi'] + ($tmp2 - $tmp) / 2; 
+            $init = $this->_config['Xi'] + ($tmp2 - $tmp) / 2; 
             $this->_pdf->addText($init, $conf['Y'], $this->titulo, 
                     $conf);
         }
             $this->_pdf->addText($init, $conf['Y'], $this->titulo, 
                     $conf);
         }
@@ -272,16 +273,16 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
      * @access protected
      */
     function _addSubTitle() {
      * @access protected
      */
     function _addSubTitle() {
-        $conf = $this->_conf['subtitulo'];
+        $conf = $this->_config['subtitulo'];
         if ($this->subtitulo) {
             $tmp = $this->_pdf->strlen($this->subtitulo, $conf);
         if ($this->subtitulo) {
             $tmp = $this->_pdf->strlen($this->subtitulo, $conf);
-            $tmp2 = $this->_conf['Xf'] + abs($this->_conf['Xi']);
+            $tmp2 = $this->_config['Xf'] + abs($this->_config['Xi']);
             if ($tmp >= $tmp2) {
                 $this->subtitulo = $this->_pdf->wrapLine ($this->subtitulo, $tmp2,
                         $conf);
                 $tmp = $this->_pdf->strlen($this->subtitulo, $conf);
             }
             if ($tmp >= $tmp2) {
                 $this->subtitulo = $this->_pdf->wrapLine ($this->subtitulo, $tmp2,
                         $conf);
                 $tmp = $this->_pdf->strlen($this->subtitulo, $conf);
             }
-            $init = $this->_conf['Xi'] + ($tmp2 - $tmp) / 2; 
+            $init = $this->_config['Xi'] + ($tmp2 - $tmp) / 2; 
             $this->_pdf->addText($init, $conf['Y'], $this->subtitulo, 
                     $conf);
         }
             $this->_pdf->addText($init, $conf['Y'], $this->subtitulo, 
                     $conf);
         }
@@ -309,6 +310,26 @@ class MECON_PDF_Marco extends MECON_HTML_Tabla {
         if ($subtitle) {
             $this->_addSubTitle();
         }
         if ($subtitle) {
             $this->_addSubTitle();
         }
+//        $this->_pdf->addLine($this->_config['Xi'], $this->_config['Yi'], 
+//                $this->_config['Xf'], $this->_config['Yi']);
     }
     }
+
+    /**
+     * Funcion que devuelve el espacio dispobible en una pagina.
+     *
+     * @param int $pagina Numero de pagina.
+     *
+     * @return int
+     * @access protected
+     */
+    function _getAvailableSpace($pagina) {
+        if ($pagina === 1) {
+            return $this->_config['contenido']['Y'];
+        }
+        else {
+            return $this->_config['titulo']['Y'];
+        }
+    }
+
 }
 ?>
\ No newline at end of file
 }
 ?>
\ No newline at end of file
index 1dbb57cd03d264af8c4f6c39e8fa7acc601bbf1f..ca4981aa0e4281b68cb931b02f82f38966f38e45 100644 (file)
@@ -27,7 +27,6 @@ $Id$
 /**
  * Medidas para cada formato de pagina.
  */
 /**
  * Medidas para cada formato de pagina.
  */
-
 return array (
         // A4 {{{
         'a4' => array (
 return array (
         // A4 {{{
         'a4' => array (
@@ -35,7 +34,7 @@ return array (
                 'portrait' => array (
                         'Xi' => -40,  //Esquina inferior izquierda
                         'Xf' => 490,  //Esquina inferior derecha
                 'portrait' => array (
                         'Xi' => -40,  //Esquina inferior izquierda
                         'Xf' => 490,  //Esquina inferior derecha
-                        'Yi' => -110, //Esquina inferior izquierda
+                        'Yi' => -50, //Esquina inferior izquierda
                         'Yf' => 700,  //Esquina superior izquierda
                         //Encabezado {{{
                         'encabezado' => array ( //Encabezado de cada pagina
                         'Yf' => 700,  //Esquina superior izquierda
                         //Encabezado {{{
                         'encabezado' => array ( //Encabezado de cada pagina
@@ -99,6 +98,67 @@ return array (
                                     'height' => 13
                                 ),
                         //}}}
                                     'height' => 13
                                 ),
                         //}}}
+                        //Contenido {{{
+                        'contenido' => array (
+                                    'Y' => 580,
+                                ),
+                        'celda_cabecera' => array (
+                                    'alto_linea' => 13,
+                                    'font'   => 'Helvetica-Bold',
+                                    'height' => 11,
+                                    'fillcolor'  => array (
+                                                    'red' => '1', 
+                                                    'blue' => '1',
+                                                    'green' => '1',
+                                                ), 
+                                    'fill'  => array (
+                                            'mode' => 'fill+stroke',
+                                            'fillcolor' => array (
+                                                    'red' => '.3', 
+                                                    'blue' => '.3',
+                                                    'green' => '.3',
+                                                ),
+                                            'strokecolor' => array (
+                                                    'red' => '0',
+                                                    'blue' => '0',
+                                                    'green' => '0'
+                                                ),
+                                        ),
+                                ),
+                        'celda_titulo' => array (
+                                    'alto_linea' => 13,
+                                    'font'   => 'Helvetica-Bold',
+                                    'height' => 11,
+                                    'fillcolor' => array (
+                                                    'red' => '0', 
+                                                    'blue' => '0',
+                                                    'green' => '0',
+                                                ), 
+                                    'fill'  => array (
+                                            'mode' => 'fill+stroke',
+                                            'fillcolor' => array (
+                                                    'red' => '.7', 
+                                                    'blue' => '.7',
+                                                    'green' => '.7',
+                                                ),
+                                            'strokecolor' => array (
+                                                    'red' => '0',
+                                                    'blue' => '0',
+                                                    'green' => '0'
+                                                ),                                        
+                                        ),
+                                ),
+                        'celda_comun' => array (
+                                    'alto_linea' => 10,
+                                    'font'   => 'Helvetica-Bold',
+                                    'height' => 8,
+                                    'fillcolor' => array (
+                                                    'red' => '0', 
+                                                    'blue' => '0',
+                                                    'green' => '0',
+                                                ), 
+                                ),
+                        //}}}
                     ),
                 //}}}
                 //LandScape {{{
                     ),
                 //}}}
                 //LandScape {{{
index cd1d7d47e92250891b855033e2824ecb55c10884..9a8215859420cd46d07372d2db92f6a11cb0e9bd 100644 (file)
@@ -39,10 +39,115 @@ class MECON_PDF_Tabla extends MECON_PDF_Marco {
      * @access public
      */
     function display() {
      * @access public
      */
     function display() {
-        $this->_pdf->newPage($this->_tamanio);
-        $this->buildPage();
+        if ($this->getRowCount()) {
+            $this->_agregarContenido();
+        }
+        else {
+            $this->_pdf->newPage($this->_tamanio);
+            $this->_pdf->addText($this->_config['Xi'], 
+                    $this->_config['contenido']['Y'], 
+                    'No hay contenido para mostrar.', 
+                    $this->_config['contenido']);
+            $this->buildPage();
+        }
         $this->_pdf->display();
     }
         $this->_pdf->display();
     }
-    
+
+    /**
+     * Funcion que devuelve el estilo de la celda segun la configuracion.  
+     *
+     * @param int $row Indicador de la fila
+     * @param int $col Indicador de la columna
+     *
+     * @return array
+     * @access protected
+     */
+    function _obtenerEstiloCelda($row, $col) {
+        $clase = $this->getCellAttributes($row, $col);
+        switch ($clase['class']) {
+            case 'mecon_html_tabla_comun_cabecera':
+                $estilo = $this->_config['celda_cabecera'];
+                break;
+            case 'mecon_html_tabla_comun_titulo':
+                $estilo = $this->_config['celda_titulo'];
+                break;
+            default : 
+                $estilo = $this->_config['celda_comun'];
+                break;
+        }
+        return $estilo;
+    }
+
+    /**
+     * Funcion que agrega las filas y columnas a la pagina.                  
+     *
+     * @return void
+     * @access protected
+     */
+    function _agregarContenido() {
+        //Calculo el ancho de la columnas basandome en el ancho que tienen las
+        //mismas en la primer fila {{{
+        $ancho_pagina = abs($this->_config['Xf'] - 
+                $this->_config['Xi']) ;
+        for ($i=0; $i<$this->getColCount(); $i++ ) {
+            $tmp = $this->getCellAttributes(0,$i);
+            if (is_null(@$tmp['width'])) {
+                die ('Todas las columnas deben tener asignado un ancho.');                
+            }
+            $attr[$i] = intval($tmp['width']);
+        }
+        $tmp = array_sum($attr);
+        $attr2[0] = $this->_config['Xi'];
+        for ($i=1; $i<count($attr); $i++) {
+            $attr2[$i] = intval(($ancho_pagina * $attr[$i-1] / $tmp) +
+                    $attr2[$i-1]);
+        }
+        $attr2[$i] = $this->_config['Xf'];
+        ///}}}
+        
+        $this->_pdf->newPage($this->_tamanio);       
+        
+        $alto = $this->_getAvailableSpace($this->_pdf->numPage());
+        
+        for ($i = 0; $i < $this->getRowCount(); $i++) {
+            $max = 0;
+            for ($j = 0; $j < $this->getColCount(); $j++) {
+                $estilo = $this->_obtenerEstiloCelda($i, $j);
+                $txt = $this->_pdf->wordWrap($this->getCellContents($i,$j),
+                        $attr2[$j+1] - $attr2[$j], $estilo);
+                $max = max($estilo['alto_linea'] * count($txt), $max);
+                
+            }
+            $alto -= $max;
+            
+            if ($alto < $this->_config['Yi']) {
+                $this->_pdf->newPage($this->_tamanio);
+                $alto = $this->_getAvailableSpace($this->_pdf->numPage());
+            }
+            for ($j = 0; $j < $this->getColCount(); $j++) {
+                $estilo = $this->_obtenerEstiloCelda($i, $j);
+                
+                $this->_pdf->addRectangle($alto, $attr2[$j],
+                        $alto+$max,
+                        $attr2[$j+1], @$estilo['fill']);
+                
+                $txt = $this->_pdf->wordWrap($this->getCellContents($i,$j),
+                        $attr2[$j+1] - $attr2[$j], $estilo);
+                $alto1 = $alto + $max;
+                foreach ($txt as $t) {
+                    $alto1 -= $estilo['alto_linea'];
+                    $this->_pdf->addText($attr2[$j] + 1, $alto1 + 1,
+                            $t, $estilo);
+                }
+            }
+        }
+        $t = true;
+        foreach ($this->_pdf->getPages() as $page) {
+            $this->_pdf->_pagina_actual = $page;
+            $this->buildPage($t, $t);
+            $t = false;
+        }
+    }
+
 }
 ?>
\ No newline at end of file
 }
 ?>
\ No newline at end of file
index 580d69a93dc739d0ddfbbb8bda502ee4c14485b9..7ea75be2130c1f9d93a9a5caf4f211c04ed71f47 100644 (file)
Binary files a/test/PDF/downs/prueba_pdf.pdf and b/test/PDF/downs/prueba_pdf.pdf differ
index 6b6c819de2ed2236eb603a39af427fb1027caa1b..02515cda76bd172c10447ded2f134209a8fc0649 100755 (executable)
@@ -9,12 +9,139 @@ require_once '../../lib/MECON/PDF/Tabla.php';
 $pdf =& new MECON_PDF_Tabla ("a4", "portrait");
 
 //$pdf->seccion = 'Dir. General de Despacho y Mesa de Entradas y esto eso todo  oooooooooooooooooooooooooooooo';
 $pdf =& new MECON_PDF_Tabla ("a4", "portrait");
 
 //$pdf->seccion = 'Dir. General de Despacho y Mesa de Entradas y esto eso todo  oooooooooooooooooooooooooooooo';
-$pdf->seccion = 'Dir. General de Despacho y Mesa de Entradas';
+$pdf->seccion = 'Prueba de la libreria de PDF\'s';
 $pdf->titulo = 'Alberto Giordano';
 $pdf->subtitulo = 'Filosofo Estilista, guacho pulenta si los hay';
 //$pdf->paginador = false;
 //$pdf->fecha = '2/10/2003';
 
 $pdf->titulo = 'Alberto Giordano';
 $pdf->subtitulo = 'Filosofo Estilista, guacho pulenta si los hay';
 //$pdf->paginador = false;
 //$pdf->fecha = '2/10/2003';
 
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'cabecera');
+$pdf->addRow(array ('1erColumna', '2daColumna para que la corete', '3erColumna'), 'titulo');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna para gonzalo que lo mira por tv desde su casa en ayacucho 1593. Aunque ahora que lo pienso me estoy equivocando', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+$pdf->addRow(array ('1erColumna', '2daColumna', '3erColumna'), 'comun');
+
+$pdf->updateColAttributes(0,'width="50%"');
+$pdf->updateColAttributes(1,'width="25%"');
+$pdf->updateColAttributes(2,'width="35%"');
 
 $pdf->display();
 
 
 $pdf->display();