]> git.llucax.com Git - mecon/meconlib.git/commitdiff
Ahora MECON_PDF_Marco no agrega una primer pagina por defecto.
authorMartín Marrese <marrese@gmail.com>
Mon, 10 Nov 2003 17:42:58 +0000 (17:42 +0000)
committerMartín Marrese <marrese@gmail.com>
Mon, 10 Nov 2003 17:42:58 +0000 (17:42 +0000)
lib/MECON/PDF.php
lib/MECON/PDF/Marco.php
lib/MECON/PDF/Separador.php
lib/MECON/PDF/Tabla.php

index fc4011e623afa1540304025cbf0382e611e0cf63..e4f1b3c21cf6e7dc7cfe15abdd7eb8c3384ce2e9 100644 (file)
@@ -57,7 +57,7 @@ class MECON_PDF {
     /**
      * Libreria externa.
      * @var    int $pdf
-     * @access private
+     * @access protected
      */
     var $_pdf;
 
@@ -79,7 +79,7 @@ class MECON_PDF {
      * Class constructor.
      *
      * @param string $tam Tipo de hoja
-     * @param string $ori Orientacion de las hojaz (portrait o landscape).
+     * @param string $ori Orientacion de las hojas (portrait o landscape).
      *
      * @return void
      * @access public
@@ -96,6 +96,7 @@ class MECON_PDF {
      * Permite agregar nuevas paginas al pdf que se esta armando.
      *
      * @param  string $pagina Tipo de pagina que se va a utilizar.
+     * @param  string $orientacion Orientacion de la pagina en particular.
      *
      * @return void
      * @access public
@@ -105,23 +106,27 @@ class MECON_PDF {
         $this->_pagina_actual = $this->_pdf->new_page($pagina);
         $this->_paginas[] = $this->_pagina_actual;
         if(!is_null($orientacion) && $orientacion != $this->orientacion)
-          $this->_orientacion_distinta[$this->numPage()] = $orientacion;  
+            $this->_orientacion_distinta[$this->numPage()] = $orientacion;  
     }
 
     /**
-     *  Funcion que retorna la orientacion de la pagina indicada
-     *   Si no se indica, la orientacion de la ultima pagina
-     *  @access public
-     *  @return int
+     * Funcion que retorna la orientacion de la pagina indicada.
+     * Si no se indica, toma la orientacion de la ultima pagina.
+     *
+     * @param int $pagina Numero de la pagina.
+     *
+     * @access public
+     * @return int
      */
     function getOrientation($pagina = null)
     {
-      if(is_null($pagina))
-        $pagina = $this->numPage();
-      if(isset($this->_orientacion_distinta[$pagina]))
-        $o = $this->_orientacion_distinta[$pagina];
-      else $o = $this->orientacion;
-      return $o;
+        if(is_null($pagina))
+            $pagina = $this->numPage();
+        
+        if(isset($this->_orientacion_distinta[$pagina]))
+            return $this->_orientacion_distinta[$pagina];
+        else 
+            return $this->orientacion;
     }
 
     /**
@@ -164,8 +169,6 @@ class MECON_PDF {
      */
     function addText($X, $Y, $texto, $estilo = '', $pag = null, $transformacion
     = null)    {
-        //@TODO Ver si $texto es un objeto
-        
         $x = $X;
         $y = $Y;
         if(is_null($transformacion))
@@ -408,7 +411,7 @@ class MECON_PDF {
     {
         if(is_null($orientacion))
             $orientacion = $this->getOrientation($pagina);
-         switch (strtolower($orientacion)) {
+        switch (strtolower($orientacion)) {
             case 'landscape':
                 $width = $this->_config['Yf'] - $this->_config['Yi'];
                 break;
@@ -431,7 +434,7 @@ class MECON_PDF {
     {
         if(is_null($orientacion))
             $orientacion = $this->getOrientation($pagina);
-         switch (strtolower($orientacion)) {
+        switch (strtolower($orientacion)) {
             case 'landscape':
                 $height = $this->_config['Xf'] - $this->_config['Xi'];
                 break;
index f3fe312a4fed0af8823d9578e5fc8774448e2410..ccd8c8b9231315f3b1f3f7d404bc73b62d139427 100644 (file)
@@ -25,16 +25,23 @@ $Id$
 -----------------------------------------------------------------------------*/
 
 require_once 'MECON/PDF.php';
+require_once 'MECON/PDF/Separador.php';
 
 /**
  * Libreria que crea un marco estandar para los pdfs.
  */
 class MECON_PDF_Marco extends MECON_PDF {
 
+    /**
+     * Objeto MECON_PDF_Separador que se utilizara por defecto.
+     * @var Object $separador
+     * @access protected
+     */
+    var $_separador_defecto;
 
     /**
      * Array de objetos MECON_PDF_Contenido
-     @ @var array $contenido
+     * @var array $contenido
      * @access protected
      */
     var $_contenido = array();
@@ -117,6 +124,7 @@ class MECON_PDF_Marco extends MECON_PDF {
         $this->MECON_PDF($tam, $ori);
         $this->tamanio = $tam;
         $this->_resetConf();
+        $this->_separador_defecto =& new MECON_PDF_Separador();
     }
 
     /**
@@ -129,7 +137,7 @@ class MECON_PDF_Marco extends MECON_PDF {
     function _resetConf($pagina = null)
     {
         if(is_null($pagina));
-          $pagina = $this->numPage();
+            $pagina = $this->numPage();
         $tmp = include 'MECON/PDF/Marco/medidas.php' ; 
         $tmp = $tmp[$this->tamanio][$this->getOrientation($pagina)];
         $tmp['Xi'] = $this->_config['Xi'];
@@ -403,7 +411,7 @@ class MECON_PDF_Marco extends MECON_PDF {
      * @access public
      */
     function toPDF() {
-        $this->newPage($this->tamanio);
+//        $this->newPage($this->tamanio);
         $this->_buildContent();
         if ($this->getPages()) {
             $t = true;
@@ -445,9 +453,10 @@ class MECON_PDF_Marco extends MECON_PDF {
      * @access public
      */
     function addContent($contenido, $separador = true) {
+        //Me aseguro de poner el separador siempre y cuando no sea el primer
+        //objeto de la primer pagina.
         if ($separador && $this->getPages()) {
-            //@TODO Agregar el separador por defecto.
-            //$this->contenido[] = $separador_defecto
+            $this->_contenido[] = $this->_separador_defecto;
         }
         $this->_contenido[] = $contenido;
     }
index 138c4a14177bd68e33ebfe8849d000439dbbe17a..2c5a86e4a4d5e46b4a75126d20d8d190e2a277c2 100644 (file)
@@ -39,7 +39,7 @@ class MECON_PDF_Separador extends MECON_PDF_Contenido {
      * @var $separacion
      * @access protected
      */
-    $_alto;
+    var $_alto;
 
     /**
      * Class Constructor
index bbe535c5a252ec74c01c7b144dd4d6c3a719db15..73068cf23efff958ef92e0a1a21a4f5471f38624 100644 (file)
@@ -167,6 +167,7 @@ class MECON_PDF_Tabla extends MECON_PDF_Contenido {
         $alto = $this->_marco->espacioDisponible;
         if ($alto <= 0 ) {
             $this->_marco->newPage($this->_marco->tamanio);               
+            $alto = $this->_marco->espacioDisponible;
         }
         //\@TODO Aca antes de crear una nueva pagina utilizar la que ya existe
         $attr2 = $this->_obtenerAnchoColumnas();
@@ -187,7 +188,8 @@ class MECON_PDF_Tabla extends MECON_PDF_Contenido {
                 }
             }
             
-            if ($alto <= 0) {
+            if ($alto <= 0) 
+            {
                 $this->_marco->newPage($this->_marco->tamanio);
                 $alto = $this->_marco->espacioDisponible;