From 1e59047d0ade02bdded56831a308b58b4e0128b9 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Mart=C3=ADn=20Marrese?= Date: Mon, 10 Nov 2003 17:42:58 +0000 Subject: [PATCH] Ahora MECON_PDF_Marco no agrega una primer pagina por defecto. --- lib/MECON/PDF.php | 37 ++++++++++++++++++++----------------- lib/MECON/PDF/Marco.php | 19 ++++++++++++++----- lib/MECON/PDF/Separador.php | 2 +- lib/MECON/PDF/Tabla.php | 4 +++- 4 files changed, 38 insertions(+), 24 deletions(-) diff --git a/lib/MECON/PDF.php b/lib/MECON/PDF.php index fc4011e..e4f1b3c 100644 --- a/lib/MECON/PDF.php +++ b/lib/MECON/PDF.php @@ -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; diff --git a/lib/MECON/PDF/Marco.php b/lib/MECON/PDF/Marco.php index f3fe312..ccd8c8b 100644 --- a/lib/MECON/PDF/Marco.php +++ b/lib/MECON/PDF/Marco.php @@ -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; } diff --git a/lib/MECON/PDF/Separador.php b/lib/MECON/PDF/Separador.php index 138c4a1..2c5a86e 100644 --- a/lib/MECON/PDF/Separador.php +++ b/lib/MECON/PDF/Separador.php @@ -39,7 +39,7 @@ class MECON_PDF_Separador extends MECON_PDF_Contenido { * @var $separacion * @access protected */ - $_alto; + var $_alto; /** * Class Constructor diff --git a/lib/MECON/PDF/Tabla.php b/lib/MECON/PDF/Tabla.php index bbe535c..73068cf 100644 --- a/lib/MECON/PDF/Tabla.php +++ b/lib/MECON/PDF/Tabla.php @@ -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; -- 2.43.0