/**
* Libreria externa.
* @var int $pdf
- * @access private
+ * @access protected
*/
var $_pdf;
*/
var $_paginas = array();
+ /**
+ * Nombre del archivo resultado para el display.
+ * @var sting $nombre
+ * @access private
+ */
+ var $_nombre;
+
/**
* 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).
+ * @param string $nombre Nombre del archivo PDF.
*
* @return void
* @access public
*/
- function MECON_PDF($tam = "a4", $ori = "portrait")
+ function MECON_PDF($tam = "a4", $ori = "portrait", $nombre = "Doc.pdf")
{
+ setlocale (LC_ALL, 'en_US');
$this->orientacion = $ori;
$this->_pdf = new pdffile;
$this->_config = include 'MECON/PDF/medidas.php';
$this->_config = $this->_config[$tam];
+ $this->_nombre = $nombre;
}
/**
* 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
$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;
}
/**
*/
function display()
{
- header("Content-Disposition: filename=Doc.pdf");
+ header("Content-Disposition: filename=".$this->_nombre);
header("Content-Type: application/pdf");
$temp = $this->toPDF();
header('Content-Length: ' . strlen($temp));
*/
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))
* @access public
*/
function wrapLine($texto, $l_max, $attr) {
- return $this->_pdf->wrap_line ($texto, $l_max, $attr);
+ //El if lo estoy haciendo porque en la funcion wordwrap de la libreria
+ //externa no tienen en cuenta que te pueden pasar un texto vacio a
+ //wrapear -> Amerita un mail a los autores.
+ if ($texto) {
+ return $this->_pdf->wrap_line ($texto, $l_max, $attr);
+ }
+ else {
+ return '';
+ }
}
/**
* @access public
*/
function wordWrap($texto, $l_max, $attr) {
- return $this->_pdf->word_wrap ($texto, $l_max, $attr);
+ //El if lo estoy haciendo porque en la funcion wordwrap de la libreria
+ //externa no tienen en cuenta que te pueden pasar un texto vacio a
+ //wrapear -> Amerita un mail a los autores.
+ if ($texto) {
+ return $this->_pdf->word_wrap ($texto, $l_max, $attr);
+ }
+ else {
+ return array();
+ }
}
/**
{
if(is_null($orientacion))
$orientacion = $this->getOrientation($pagina);
- switch (strtolower($orientacion)) {
+ switch (strtolower($orientacion)) {
case 'landscape':
$width = $this->_config['Yf'] - $this->_config['Yi'];
break;
{
if(is_null($orientacion))
$orientacion = $this->getOrientation($pagina);
- switch (strtolower($orientacion)) {
+ switch (strtolower($orientacion)) {
case 'landscape':
$height = $this->_config['Xf'] - $this->_config['Xi'];
break;