SlideShare una empresa de Scribd logo
1 de 3
Descargar para leer sin conexión
Celdas múltiples, encabezados y pies de página


Celdas con
                                       Encabezados, pies de página y saltos automáticos
saltos de línea
                                        <?
                                        # include y define idénticos a los anteriores
La función Cell, estudiada en la
página anterior, no interpreta los      include("fpdf.php");
saltos de línea y, en el caso de que    define('FPDF_FONTPATH','c:/Apache/htdocs/cursoPHP/fontsPDF/');
la cadena de texto sea más larga        # creamos una clase extendida de la clase FPDF
que el ancho de la celda, escribirá     class GranPDF extends FPDF {
fuera de sus márgenes.                      # incluimos la funcion Header (debe ser definida con este nombre)
                                            # que se ejecuta cada vez que se añade una página, sea en forma
La clase FPDF dispone de la                 # manual o en forma automática.
función:                                    # Nos permite insertar los encabezados de todas las páginas del
$obj->MuliCell(a,h,text,b,aln,r)            # documento
                                            function Header(){
donde a es el ancho de la celda (si                #insertamos un salto de línea de 2 mm. a partir
se indica cero ocupará hasta el                    #del margen superior
margen derecho de la página), h                     $this->Ln(2);
es el alto de cada una de las                      # establecmos color y estilo de letra del encabezado
celdas aunque, en la práctica, se                   $this->SetTextColor(0,0,0);
comporta de forma idéntica al
                                                    $this->SetFont("Times","I", 11);
interlineado de un procesador de
textos), text es la cadena de texto
                                               # establecemos una celda cuyo ancho es cero
(o variable que lo contiene) a                 # de esta forma se extenderá hasta el margen derecho
insertar.                                      # ocupando toda la caja de texto de la página.
                                               # le ponemos unicamente brode inferior, texto centrado
b es un parámetro que puede                    # sin relleno y le adjudicamos como parámetro de posición
valer: 0 (sin bordes); 1 (con                  # de la celda siguiente 1 de forma que comience en el margen
bordes), y también: L (borde por               # izquierdo de una línea nueva
el lateral izquierdo de la celda); T                $this->Cell(0,8,"La Regenta",'B',1,'C',0);
(borde por la parte superior), R
                                               # colocamos un salto de línes de 3 milimetros para separar el
(línea de borde en el margen
                                               # encabezado de los textos de la página
derecho), B (línea de borde en la
parte inferior) ó agrupaciones de                   $this->Ln(3);
estos últimos valores, en cualquier         }
orden, tales como: LR ó TB,                 # incluimos la funcion Footer (debe ser definida con este nombre)
etcétera.                                   # para insertar pies de página cada vez que cree una página nueva
                                            function Footer(){
El parámetro aln indica la                          $this->Ln(2);
alineación horizontal que han de                    $this->SetTextColor(0,0,0);
tener los textos y permite los
                                                    $this->SetFont("Arial","I", 9);
valores: L (izquierda); C (centro);
                                                # en este caso incluimos el número de página con un borde superior
R (derecha) ó J (justificado).
                                                # de la celda, texto centrado y tambien activando la celda
Por último, el parámetro r              siguiente
(relleno) especifica si a las celdas            # de modo que se produzca un saldo de línea
se les aplicará (valor 1) un color                  $this->Cell(0,5,"Página ".$this->PageNo(),'T',1,'C',0);
de fondo o si se va a tratar (valor         }
0) de un fondo transparente.            }
                                        # acabada la inserción de la clase extendida continuamos con el código
El comportamiento de esta función
tiene las siguientes
                                        # establecemos las dimensiones del documento
particularidades:                       $dimensiones=array (140,200);
                                        # creamos un nuevo objeto pero ¡cuidado! utilizaremos
• Inserta los saltos de línea           # la clase extendida GranPDF
contenidos en el fichero origen y       $MiPDF=new GranPDF('P','mm',$dimensiones);
los incluidos en la cadena de texto     # ajustamos al 100% la visualización
mediante la secuencia de escape         $MiPDF->SetDisplayMode('fullpage');
n.                                     # añadimos la primera página del documento. La ejecución de esta función
• Inserta saltos de línea               # disparará la ejecución de las funciones Header() y Footer() de la
automáticos en el momento en            # clase extendida y, por tanto, incluirá en el documento los encabezados
que el texto alcanza el borde           # y pies de página allí establecidos
derecho de la celda.                    $MiPDF->Addpage();
                                        # cambiamos el estilo de fuente a "normal"
• Si AutoPageBreak está activado        $MiPDF->SetFont('Times','',12);
inserta saltos de página                # leemos un fichero de texto y lo recogemos en una variables
automáticos en el momento en
                                            $f1=fopen('regenta.txt','r');
que el texto alcanza el margen
                                              $regenta1=fread($f1,filesize('regenta.txt'));
inferior de la página.
                                            fclose($f1);
                                        # insertamos el fichero mediante Multicell
Encabezados                             # el ancho 0 establece que la celda ocupará desde el margen
y pies de página                        # izquierdo hasta el derecho. La interlinea será de 4mm.
                                        # el texto que se incluirá (con salto de línea automático
La clase FPDF contiene dos              # e inserción automática de nuevas páginas) será el recogido
métodos (funciones) llamados:           # del fichero de texto. La celda no tendrá bordes
Header() y Footer().                    # el texto estará justificado y no tendrá relleno de fondo.
                                        $MiPDF->Multicell(0,4,$regenta1,0,'J',0);
Si editamos el fichero fpdf.php         # establecemos la visualización del documento
podemos ver que ambas están
                                        $MiPDF->Output();?>
vacías (no contienen ninguna
instrucción) presentando una
sintaxis como esta:                                                    Ejemplo141.php
    function Header(){
    // comentario
    }                                    El ejemplo siguiente es una adaptación del ejemplo139 al uso de encabezados y pies de
y                                      página.
  function Footer(){                                       Ver código fuente        ejemplo142.php
  // comentario
  }
Ambas son invocadas de forma
automática cada vez que se
                                        <?
ejecuta la función AddPage() y,
                                       # incluimos la clase fpdf.php y la constante FPDF_FONTPATH
eso permite crear otras funciones
                                       include("fpdf.php");
a medida, con igual nombre, e
                                       define('FPDF_FONTPATH','c:/Apache/htdocs/cursoPHP/fontsPDF/');
incluirlas en una clase extendida.
                                       # creamos la clase GranPDF extendida de fpdf.php
Recuerda que los métodos de la         class GranPDF extends FPDF {
clase extendida prevalecen sobre       # definimos dos nuevas variables internas
los que pudieran existir en la clase   # el identificador de la columna actual
padre con su mismo nombre. Por         # y el valor de la ordenada de inicio de las columnas
esta razón, las nuevas funciones               var $columna_actual=0;
de la clase extendida nos                      var $ordenada_inicio=21;
permitirían incluir encabezados y
                                       # la función Header se comporta de forma idéntica al ejemplo anterior
pies de página en cada una de las
                                           function Header(){
nuevas páginas añadidas mediante
AddPage().                                          $this->SetTextColor(0,0,0);
                                                    $this->SetFont("Times","I", 11);
El procedimiento sería este:                        $this->Cell(0,8,"La Regenta",'B',1,'C',0);
                                                    $this->Ln(3);
• Creamos una clase extendida de           }
la clase original FPDF.                # Footer es similar al caso anterior con la única diferencia que
• Incluimos en esta nueva clase            function Footer(){
funciones con nombres Header()                      $this->SetY(-20);
y Footer() (no podemos modificar                    $this->Ln(2);
el nombre ya que han de coincidir                   $this->SetTextColor(0,0,0);
con los nombres de las funciones                    $this->SetFont("Arial","I", 9);
vacias de la clase padre) en las                    $this->Cell(0,5,"Página ".$this->PageNo(),'T',1,'C',0);
que indicamos los contenidos que           }
han de insertarse (y su posición)          function AcceptPageBreak(){
mediante cada una de ellas. • Al               # al alcanzar el margen inferior se activa esta función
crear el nuevo objeto mediante:
                                               # que comprueba si el punto de inserción está en la columna
$obj= new nombre_clase()                       # primera (0) ó en la segunda
                                                if($this->$columna_actual==0){
utilizaremos el nombre el de la                   # cambia el valor del número de columna a 1 (pasa a la segunda)
clase extendida que hemos                         $this->$columna_actual=1;
creado para incluir estas funciones.              # cambia el punto de inserción a la coordenada de inicio
                                                  # que es la parte superior de la página
De esta forma, cada vez que se
ejecuta AddPage() (añadir una                     $this->SetY($this->ordenada_inicio);
nueva página) se ejecutarán                       # cambia el margen izquierdo de modo que el texto
también Header() y Footer() que,                  # aparezca en la columna derecha (a partir de los 72.5 mm).
al no ser ya funciones vacías,                    # más abajo está comentada la razon de estos valores
realizarán una inclusión de                       $this->SetLeftMargin(72.5);
contenidos en cada una de las                     # cambia el punto de insercion al nuevo margen izquierdo
páginas del documento.                            $this->SetX(72.5);
                                                  # establecemos que la función devuelva false
Gestión de la inserción                           # con ello no se produce un salto de página
automática de páginas                             # y el punto de inserción se translada a las
                                                  # coordenadas indicadas en las instrucciones anteriores
                                                  return false;
La clase FPDF contiene esta
                                               }else{
función:
                                                  # si la columna es la segunda (no es la cero)
function AcceptPageBreak(){                       # cambia a la primera, asigna el valor cero
// comentario                                             $this->$columna_actual=0;
return $this->AutoPageBreak;                      # cambia el punto de inserción a la coordenada de inicio
}                                                 # que es la parte superior de la página
                                                  $this->SetY($this->ordenada_inicio);
que igual que ocurría con Header()
                                                  # cambia el margen izquierdo de modo que el texto
y Footer() es invocada en el
                                                  # aparezca en la columna izquierda (a partir de los 10 mm).
momento en que encuentra un
salto de página y dependiendo del                 $this->SetLeftMargin(10);
valor que devuelva (true ó false)                 # cambia el punto de insercion al nuevo margen izquierdo
se ejecuta ó no la funcion AddPage                $this->SetX(10);
().                                               # establecemos que la función devuelva true
                                                  # con ello genera un salto de página
Tal como está diseñada esta clase                 # y la insercion de texto continua en la pagina siguiente
devolverá el valor que tenga                      return true;
asignado AutoPageBreak() (true ó                }
false) pero, igual que ocurría con
                                           }
Header() y Footer() permite incluir
otra función con el mismo nombre       }
en una clase extendida. La             /* establecemos el tamaño de la página
condición de la nueva función es       que tendrá 140 mm. de ancho.
que, al igual que ocurre con esta,     Si establecemos un margen por la izquierda de 10 mm.
habrá de devolver un valor             un margen por la derecha de otros 10 mm.
booleano (cierto ó falso).             y un espacio entre columnas de 5 mm. nos restan
                                       140-25=115 mm. que repartidos entre dos columnas
Esta posibilidad añade nuevas e        les darían un ancho de 115/2=57,5 mm.
interesantes funcionalidades al uso
                                       Las primera columna comenzará en 10 y acabará en
de la clase FPDF. Una de las
posibilidades podría ser la de crear
                                       10 +57,5=67.5 mm. La segunda deberá empezar en
documentos con varias columnas         72.5 (añadiendo 5 mm. de espacio entre columnas */
(estilo periodístico). La forma de     $dimensiones=array (140,200);
proceder (una de las posibles) la      # creamos el nuevo objeto partiendo de la clase ampliada
tienes descrita en el ejemplo que      $MiPDF=new GranPDF('P','mm',$dimensiones);
hemos incluido a la derecha.           # ajustamos al 100% la visualización
                                       $MiPDF->SetDisplayMode('fullpage');
Otras opciones                         # insertamos la primera página del documento
                                       $MiPDF->Addpage();
                                       # cambiamos el estilo de fuente a "normal"
Además de las funciones que
                                       $MiPDF->SetFont('Times','',12);
hemos descrito a lo largo de esta
                                       # establecemos un color de fondo para las celdas de texto
página, existen clases extendidas
que incluyen nuevas, y en algunos      # y el color de la tipografia
casos muy interesantes, funciones      $MiPDF->SetFillColor(240,240,240);
que resuelven problemas                $MiPDF->SetTextColor(0,0,0);
específicos concretos a la hora de     # leemos un fichero de texto y lo recogemos en una variables
crear ficheros PDF. Algunas de             $f1=fopen('regenta.txt','r');
ellas están disponibles desde el             $regenta1=fread($f1,filesize('regenta.txt'));
propio sitio FPDF de Olivier
                                          fclose($f1);
PLATHEY.                              # insertamos el fichero mediante Multicell
Una de las utilidades más             # el ancho 57.5 estable el ancho de columna igual
interesantes -desde luego que ni      # para la derecha que para la izquierda La interlinea será de 4mm.
mucho menos únicas- de este tipo      # el texto que se incluirá (con salto de línea automático
de formatos podría ser la             # e inserción automática de nuevas páginas cuando se hayan completado
paginación de los resultados de las   # las dos columnas) será el recogido
consultas en bases de datos.          # del fichero de texto. La celda no tendrá bordes
                                      # el texto estará justificado y SI tendrá relleno de fondo.
Cuando nos encontremos en esa         $MiPDF->Multicell(57.5,4,$regenta1,0,'J',1);
situación podremos utilizar un
                                      # establecemos la visualización del documento
procedimiento casi idéntico al
usado en el ejemplo sobre las         $MiPDF->Output();?>
tablas de alimentos.

No importaría el tamaño del
fichero de texto (número de
                                                                      Ejemplo143.php
páginas que pudiera ocupar) ni el
número de registros obtenidos
como resultado de una consulta a       Ejercicio nº 37
una base de datos. Sería la propia
clase FPDF quien se encargaría de     Crea un documento PDF en formato A-5 con orientación vertical. Debe incluir un encabezado
crear las páginas necesarias de un
                                      (a modo de logotipo) compuesto por un dibujo creado mediante la funciones PDF. Además,
documento con un formato
preestablecido.                       habrá de incluir un texto enmarcado y una fotografía centrada en el documento.


                                                 Anterior                       Indice                        Siguiente

Más contenido relacionado

La actualidad más candente (20)

59 Php. Formatos Mime
59 Php. Formatos Mime59 Php. Formatos Mime
59 Php. Formatos Mime
 
14 PHP. Variables
14 PHP. Variables14 PHP. Variables
14 PHP. Variables
 
php Fundamentos
php Fundamentos php Fundamentos
php Fundamentos
 
Perl3 subrutinas
Perl3 subrutinasPerl3 subrutinas
Perl3 subrutinas
 
Php1
Php1Php1
Php1
 
Php1
Php1Php1
Php1
 
32 Php. Etiquetas Html
32 Php. Etiquetas Html32 Php. Etiquetas Html
32 Php. Etiquetas Html
 
Php
PhpPhp
Php
 
Php
PhpPhp
Php
 
77 Php. AñAdir Nuevas Fuentes Para Pdf
77 Php. AñAdir Nuevas Fuentes Para Pdf77 Php. AñAdir Nuevas Fuentes Para Pdf
77 Php. AñAdir Nuevas Fuentes Para Pdf
 
El shell-bash
El shell-bashEl shell-bash
El shell-bash
 
82 Php. Ver Y Modificar Estructuras
82 Php. Ver Y Modificar Estructuras82 Php. Ver Y Modificar Estructuras
82 Php. Ver Y Modificar Estructuras
 
2 7 ficheros_php
2 7 ficheros_php2 7 ficheros_php
2 7 ficheros_php
 
Php1
Php1Php1
Php1
 
Php1
Php1Php1
Php1
 
Php1
Php1Php1
Php1
 
Php1
Php1Php1
Php1
 
Programacion php
Programacion phpProgramacion php
Programacion php
 
Descomposicion funcional parte ii 2013 2
Descomposicion funcional parte ii 2013 2Descomposicion funcional parte ii 2013 2
Descomposicion funcional parte ii 2013 2
 
Curso Bash 2
Curso Bash 2Curso Bash 2
Curso Bash 2
 

Destacado

Dispositivos de almacenamiento
Dispositivos de almacenamientoDispositivos de almacenamiento
Dispositivos de almacenamientomalaclau
 
Clase I En Amalgama Restauradora I Uasd 2010 1
Clase I En Amalgama   Restauradora I Uasd 2010 1Clase I En Amalgama   Restauradora I Uasd 2010 1
Clase I En Amalgama Restauradora I Uasd 2010 1Milagros Daly
 
Actividad en coordinación
Actividad en coordinaciónActividad en coordinación
Actividad en coordinaciónmalaclau
 
Diabetes y Ramadan
Diabetes y RamadanDiabetes y Ramadan
Diabetes y RamadanTARIK022
 
Actividad en coordinación
Actividad en coordinaciónActividad en coordinación
Actividad en coordinaciónmalaclau
 
Recursos Multimèdia i eines de suport
Recursos Multimèdia i eines de suportRecursos Multimèdia i eines de suport
Recursos Multimèdia i eines de suportFundació CATIC
 
PresentacióN Leones
PresentacióN LeonesPresentacióN Leones
PresentacióN Leonesaftsancris2
 
E:\PresentacióN1 Ppt
E:\PresentacióN1 PptE:\PresentacióN1 Ppt
E:\PresentacióN1 Pptjuanillo2010
 
Operaciones con Conjuntos
Operaciones con ConjuntosOperaciones con Conjuntos
Operaciones con ConjuntosKely
 
Análisis reticular del fútbol de españa
Análisis reticular del fútbol de españaAnálisis reticular del fútbol de españa
Análisis reticular del fútbol de españaarsfutbol
 
P I Violencia Familiar
P I  Violencia FamiliarP I  Violencia Familiar
P I Violencia Familiarnekochocolat
 
PAGINA WEB EXPOSICIÓN
PAGINA WEB EXPOSICIÓNPAGINA WEB EXPOSICIÓN
PAGINA WEB EXPOSICIÓNCarlos Correa
 
Linkedin: "La xarxa professional"
Linkedin: "La xarxa professional"Linkedin: "La xarxa professional"
Linkedin: "La xarxa professional"Fundació CATIC
 

Destacado (20)

Dispositivos de almacenamiento
Dispositivos de almacenamientoDispositivos de almacenamiento
Dispositivos de almacenamiento
 
Redes Informáticas
Redes InformáticasRedes Informáticas
Redes Informáticas
 
Clase I En Amalgama Restauradora I Uasd 2010 1
Clase I En Amalgama   Restauradora I Uasd 2010 1Clase I En Amalgama   Restauradora I Uasd 2010 1
Clase I En Amalgama Restauradora I Uasd 2010 1
 
Actividad en coordinación
Actividad en coordinaciónActividad en coordinación
Actividad en coordinación
 
Diabetes y Ramadan
Diabetes y RamadanDiabetes y Ramadan
Diabetes y Ramadan
 
Actividad en coordinación
Actividad en coordinaciónActividad en coordinación
Actividad en coordinación
 
Manual de instalacion de joomla
Manual de instalacion de joomlaManual de instalacion de joomla
Manual de instalacion de joomla
 
Recursos Multimèdia i eines de suport
Recursos Multimèdia i eines de suportRecursos Multimèdia i eines de suport
Recursos Multimèdia i eines de suport
 
Mex Gto Cal Segunda Presentación
Mex Gto Cal Segunda PresentaciónMex Gto Cal Segunda Presentación
Mex Gto Cal Segunda Presentación
 
PresentacióN Leones
PresentacióN LeonesPresentacióN Leones
PresentacióN Leones
 
E:\PresentacióN1 Ppt
E:\PresentacióN1 PptE:\PresentacióN1 Ppt
E:\PresentacióN1 Ppt
 
Operaciones con Conjuntos
Operaciones con ConjuntosOperaciones con Conjuntos
Operaciones con Conjuntos
 
Unesco
UnescoUnesco
Unesco
 
Análisis reticular del fútbol de españa
Análisis reticular del fútbol de españaAnálisis reticular del fútbol de españa
Análisis reticular del fútbol de españa
 
Pastel
PastelPastel
Pastel
 
P I Violencia Familiar
P I  Violencia FamiliarP I  Violencia Familiar
P I Violencia Familiar
 
PAGINA WEB EXPOSICIÓN
PAGINA WEB EXPOSICIÓNPAGINA WEB EXPOSICIÓN
PAGINA WEB EXPOSICIÓN
 
Derechos humanos
Derechos humanosDerechos humanos
Derechos humanos
 
ResolucióN
ResolucióNResolucióN
ResolucióN
 
Linkedin: "La xarxa professional"
Linkedin: "La xarxa professional"Linkedin: "La xarxa professional"
Linkedin: "La xarxa professional"
 

Similar a 77 Php. Celdas Multiples, Encabezados Y Pies De Pagina

Guía práctica desarrollo web con php 5 y my sql
Guía práctica desarrollo web con php 5 y my sqlGuía práctica desarrollo web con php 5 y my sql
Guía práctica desarrollo web con php 5 y my sqlJesus Machicado Gomez
 
Arrays renderizables y Estándares de codificación en Drupal
Arrays renderizables y Estándares de codificación en DrupalArrays renderizables y Estándares de codificación en Drupal
Arrays renderizables y Estándares de codificación en DrupalWalter Herrera
 
Algoritmos y lenjuage de programacion
Algoritmos y  lenjuage de programacionAlgoritmos y  lenjuage de programacion
Algoritmos y lenjuage de programacionYsaac Ruiz
 
Practicawebdelasesion3
Practicawebdelasesion3Practicawebdelasesion3
Practicawebdelasesion3Humberto1998
 
0139-php-y-mysql-lenguaje-php-basico.pdf
0139-php-y-mysql-lenguaje-php-basico.pdf0139-php-y-mysql-lenguaje-php-basico.pdf
0139-php-y-mysql-lenguaje-php-basico.pdfmiguelalemangonzales1
 
Php y pdf
Php y pdfPhp y pdf
Php y pdfjunnuen
 
25 Php. Operaciones Con Cadenas
25 Php. Operaciones Con Cadenas25 Php. Operaciones Con Cadenas
25 Php. Operaciones Con CadenasJosé M. Padilla
 
80 Php. Campos Y Conexiones
80 Php. Campos Y Conexiones80 Php. Campos Y Conexiones
80 Php. Campos Y ConexionesJosé M. Padilla
 
Java script teoria
Java script teoriaJava script teoria
Java script teoriassxdan
 
Introducción a php
Introducción a phpIntroducción a php
Introducción a phpalan moreno
 
Presentación de matlab electromagnetismo ...
Presentación de matlab electromagnetismo                                     ...Presentación de matlab electromagnetismo                                     ...
Presentación de matlab electromagnetismo ...SimonCaceres4
 
PHP Tema 2 - Lenguaje PHP básico
PHP Tema 2 - Lenguaje PHP básicoPHP Tema 2 - Lenguaje PHP básico
PHP Tema 2 - Lenguaje PHP básicoSpacetoshare
 

Similar a 77 Php. Celdas Multiples, Encabezados Y Pies De Pagina (20)

39 Php. Bucles While
39 Php. Bucles While39 Php. Bucles While
39 Php. Bucles While
 
Guía práctica desarrollo web con php 5 y my sql
Guía práctica desarrollo web con php 5 y my sqlGuía práctica desarrollo web con php 5 y my sql
Guía práctica desarrollo web con php 5 y my sql
 
Java script operaciones
Java script operacionesJava script operaciones
Java script operaciones
 
Arrays renderizables y Estándares de codificación en Drupal
Arrays renderizables y Estándares de codificación en DrupalArrays renderizables y Estándares de codificación en Drupal
Arrays renderizables y Estándares de codificación en Drupal
 
64 Php. Manejando Fuentes
64 Php. Manejando Fuentes64 Php. Manejando Fuentes
64 Php. Manejando Fuentes
 
Manual+php+básico
Manual+php+básicoManual+php+básico
Manual+php+básico
 
Algoritmos y lenjuage de programacion
Algoritmos y  lenjuage de programacionAlgoritmos y  lenjuage de programacion
Algoritmos y lenjuage de programacion
 
Practicawebdelasesion3
Practicawebdelasesion3Practicawebdelasesion3
Practicawebdelasesion3
 
Tutorial de php
Tutorial de phpTutorial de php
Tutorial de php
 
0139-php-y-mysql-lenguaje-php-basico.pdf
0139-php-y-mysql-lenguaje-php-basico.pdf0139-php-y-mysql-lenguaje-php-basico.pdf
0139-php-y-mysql-lenguaje-php-basico.pdf
 
Mini manual php
Mini manual phpMini manual php
Mini manual php
 
Php y pdf
Php y pdfPhp y pdf
Php y pdf
 
25 Php. Operaciones Con Cadenas
25 Php. Operaciones Con Cadenas25 Php. Operaciones Con Cadenas
25 Php. Operaciones Con Cadenas
 
80 Php. Campos Y Conexiones
80 Php. Campos Y Conexiones80 Php. Campos Y Conexiones
80 Php. Campos Y Conexiones
 
Curso Bash 3
Curso Bash 3Curso Bash 3
Curso Bash 3
 
Java script teoria
Java script teoriaJava script teoria
Java script teoria
 
Introducción a php
Introducción a phpIntroducción a php
Introducción a php
 
Curso php-my sql-clase-4
Curso php-my sql-clase-4Curso php-my sql-clase-4
Curso php-my sql-clase-4
 
Presentación de matlab electromagnetismo ...
Presentación de matlab electromagnetismo                                     ...Presentación de matlab electromagnetismo                                     ...
Presentación de matlab electromagnetismo ...
 
PHP Tema 2 - Lenguaje PHP básico
PHP Tema 2 - Lenguaje PHP básicoPHP Tema 2 - Lenguaje PHP básico
PHP Tema 2 - Lenguaje PHP básico
 

Más de José M. Padilla

Informe Riesgos y amenazas en cloud computing. INTECTO-CERT
Informe Riesgos y amenazas en cloud computing. INTECTO-CERTInforme Riesgos y amenazas en cloud computing. INTECTO-CERT
Informe Riesgos y amenazas en cloud computing. INTECTO-CERTJosé M. Padilla
 
Manual multimedia y web 2.0
Manual multimedia y web 2.0Manual multimedia y web 2.0
Manual multimedia y web 2.0José M. Padilla
 
Guia optimizacion motores_busqueda
Guia optimizacion motores_busquedaGuia optimizacion motores_busqueda
Guia optimizacion motores_busquedaJosé M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 08 Partituras. Note Pad 2004
Modulo 2. Sonido Y Musica Por Ordenador. 08 Partituras. Note Pad 2004Modulo 2. Sonido Y Musica Por Ordenador. 08 Partituras. Note Pad 2004
Modulo 2. Sonido Y Musica Por Ordenador. 08 Partituras. Note Pad 2004José M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 10 Karaoke 2. Melody Assistant
Modulo 2. Sonido Y Musica Por Ordenador. 10 Karaoke 2. Melody AssistantModulo 2. Sonido Y Musica Por Ordenador. 10 Karaoke 2. Melody Assistant
Modulo 2. Sonido Y Musica Por Ordenador. 10 Karaoke 2. Melody AssistantJosé M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 09 Karaoke 1. Van Basco Karaoke Player
Modulo 2. Sonido Y Musica Por Ordenador. 09 Karaoke 1. Van Basco Karaoke PlayerModulo 2. Sonido Y Musica Por Ordenador. 09 Karaoke 1. Van Basco Karaoke Player
Modulo 2. Sonido Y Musica Por Ordenador. 09 Karaoke 1. Van Basco Karaoke PlayerJosé M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 07 Conversor. D Bpower Amp
Modulo 2. Sonido Y Musica Por Ordenador. 07 Conversor. D Bpower AmpModulo 2. Sonido Y Musica Por Ordenador. 07 Conversor. D Bpower Amp
Modulo 2. Sonido Y Musica Por Ordenador. 07 Conversor. D Bpower AmpJosé M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 06 Secuenciador. N Track Studio
Modulo 2. Sonido Y Musica Por Ordenador. 06 Secuenciador. N Track StudioModulo 2. Sonido Y Musica Por Ordenador. 06 Secuenciador. N Track Studio
Modulo 2. Sonido Y Musica Por Ordenador. 06 Secuenciador. N Track StudioJosé M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 05 Editor De Audio. Audacity
Modulo 2. Sonido Y Musica Por Ordenador. 05 Editor De Audio. AudacityModulo 2. Sonido Y Musica Por Ordenador. 05 Editor De Audio. Audacity
Modulo 2. Sonido Y Musica Por Ordenador. 05 Editor De Audio. AudacityJosé M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 04 Reproductor. Real One Player
Modulo 2. Sonido Y Musica Por Ordenador. 04 Reproductor. Real One PlayerModulo 2. Sonido Y Musica Por Ordenador. 04 Reproductor. Real One Player
Modulo 2. Sonido Y Musica Por Ordenador. 04 Reproductor. Real One PlayerJosé M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 03 Extraccion De Audio. C Dex
Modulo 2. Sonido Y Musica Por Ordenador. 03 Extraccion De Audio. C DexModulo 2. Sonido Y Musica Por Ordenador. 03 Extraccion De Audio. C Dex
Modulo 2. Sonido Y Musica Por Ordenador. 03 Extraccion De Audio. C DexJosé M. Padilla
 
Modulo 2. Sonido Y Musica Por Ordenador. 02 Sonido En El Sistema Operativo
Modulo 2. Sonido Y Musica Por Ordenador. 02 Sonido En El Sistema OperativoModulo 2. Sonido Y Musica Por Ordenador. 02 Sonido En El Sistema Operativo
Modulo 2. Sonido Y Musica Por Ordenador. 02 Sonido En El Sistema OperativoJosé M. Padilla
 
Modulo 1. Sonido Y Musica Por Ordenador. 07 Almacenamiento
Modulo 1. Sonido Y Musica Por Ordenador. 07 AlmacenamientoModulo 1. Sonido Y Musica Por Ordenador. 07 Almacenamiento
Modulo 1. Sonido Y Musica Por Ordenador. 07 AlmacenamientoJosé M. Padilla
 
Modulo 1. Sonido Y Musica Por Ordenador. 06 El Audio
Modulo 1. Sonido Y Musica Por Ordenador. 06 El AudioModulo 1. Sonido Y Musica Por Ordenador. 06 El Audio
Modulo 1. Sonido Y Musica Por Ordenador. 06 El AudioJosé M. Padilla
 
Modulo 1. Sonido Y Musica Por Ordenador. 05 El Midi
Modulo 1. Sonido Y Musica Por Ordenador. 05 El MidiModulo 1. Sonido Y Musica Por Ordenador. 05 El Midi
Modulo 1. Sonido Y Musica Por Ordenador. 05 El MidiJosé M. Padilla
 
Modulo 1. Sonido Y Musica Por Ordenador. 04 El Estudio De Sonido. Edicion
Modulo 1. Sonido Y Musica Por Ordenador. 04 El Estudio De Sonido. EdicionModulo 1. Sonido Y Musica Por Ordenador. 04 El Estudio De Sonido. Edicion
Modulo 1. Sonido Y Musica Por Ordenador. 04 El Estudio De Sonido. EdicionJosé M. Padilla
 
Modulo 1. Sonido Y Musica Por Ordenador. 03 El Sonido Y Su Representacion
Modulo 1. Sonido Y Musica Por Ordenador. 03 El Sonido Y Su RepresentacionModulo 1. Sonido Y Musica Por Ordenador. 03 El Sonido Y Su Representacion
Modulo 1. Sonido Y Musica Por Ordenador. 03 El Sonido Y Su RepresentacionJosé M. Padilla
 
Modulo 1. Sonido y musica por ordenador. 02 El ordenador en el aula.
Modulo 1. Sonido y musica por ordenador. 02 El ordenador en el aula.Modulo 1. Sonido y musica por ordenador. 02 El ordenador en el aula.
Modulo 1. Sonido y musica por ordenador. 02 El ordenador en el aula.José M. Padilla
 
00 Sonido y musica por ordenador. Guia del alumno.
00 Sonido y musica por ordenador. Guia del alumno.00 Sonido y musica por ordenador. Guia del alumno.
00 Sonido y musica por ordenador. Guia del alumno.José M. Padilla
 
00 Sonido y musica por ordenador. Caso 20
00 Sonido y musica por ordenador. Caso 2000 Sonido y musica por ordenador. Caso 20
00 Sonido y musica por ordenador. Caso 20José M. Padilla
 

Más de José M. Padilla (20)

Informe Riesgos y amenazas en cloud computing. INTECTO-CERT
Informe Riesgos y amenazas en cloud computing. INTECTO-CERTInforme Riesgos y amenazas en cloud computing. INTECTO-CERT
Informe Riesgos y amenazas en cloud computing. INTECTO-CERT
 
Manual multimedia y web 2.0
Manual multimedia y web 2.0Manual multimedia y web 2.0
Manual multimedia y web 2.0
 
Guia optimizacion motores_busqueda
Guia optimizacion motores_busquedaGuia optimizacion motores_busqueda
Guia optimizacion motores_busqueda
 
Modulo 2. Sonido Y Musica Por Ordenador. 08 Partituras. Note Pad 2004
Modulo 2. Sonido Y Musica Por Ordenador. 08 Partituras. Note Pad 2004Modulo 2. Sonido Y Musica Por Ordenador. 08 Partituras. Note Pad 2004
Modulo 2. Sonido Y Musica Por Ordenador. 08 Partituras. Note Pad 2004
 
Modulo 2. Sonido Y Musica Por Ordenador. 10 Karaoke 2. Melody Assistant
Modulo 2. Sonido Y Musica Por Ordenador. 10 Karaoke 2. Melody AssistantModulo 2. Sonido Y Musica Por Ordenador. 10 Karaoke 2. Melody Assistant
Modulo 2. Sonido Y Musica Por Ordenador. 10 Karaoke 2. Melody Assistant
 
Modulo 2. Sonido Y Musica Por Ordenador. 09 Karaoke 1. Van Basco Karaoke Player
Modulo 2. Sonido Y Musica Por Ordenador. 09 Karaoke 1. Van Basco Karaoke PlayerModulo 2. Sonido Y Musica Por Ordenador. 09 Karaoke 1. Van Basco Karaoke Player
Modulo 2. Sonido Y Musica Por Ordenador. 09 Karaoke 1. Van Basco Karaoke Player
 
Modulo 2. Sonido Y Musica Por Ordenador. 07 Conversor. D Bpower Amp
Modulo 2. Sonido Y Musica Por Ordenador. 07 Conversor. D Bpower AmpModulo 2. Sonido Y Musica Por Ordenador. 07 Conversor. D Bpower Amp
Modulo 2. Sonido Y Musica Por Ordenador. 07 Conversor. D Bpower Amp
 
Modulo 2. Sonido Y Musica Por Ordenador. 06 Secuenciador. N Track Studio
Modulo 2. Sonido Y Musica Por Ordenador. 06 Secuenciador. N Track StudioModulo 2. Sonido Y Musica Por Ordenador. 06 Secuenciador. N Track Studio
Modulo 2. Sonido Y Musica Por Ordenador. 06 Secuenciador. N Track Studio
 
Modulo 2. Sonido Y Musica Por Ordenador. 05 Editor De Audio. Audacity
Modulo 2. Sonido Y Musica Por Ordenador. 05 Editor De Audio. AudacityModulo 2. Sonido Y Musica Por Ordenador. 05 Editor De Audio. Audacity
Modulo 2. Sonido Y Musica Por Ordenador. 05 Editor De Audio. Audacity
 
Modulo 2. Sonido Y Musica Por Ordenador. 04 Reproductor. Real One Player
Modulo 2. Sonido Y Musica Por Ordenador. 04 Reproductor. Real One PlayerModulo 2. Sonido Y Musica Por Ordenador. 04 Reproductor. Real One Player
Modulo 2. Sonido Y Musica Por Ordenador. 04 Reproductor. Real One Player
 
Modulo 2. Sonido Y Musica Por Ordenador. 03 Extraccion De Audio. C Dex
Modulo 2. Sonido Y Musica Por Ordenador. 03 Extraccion De Audio. C DexModulo 2. Sonido Y Musica Por Ordenador. 03 Extraccion De Audio. C Dex
Modulo 2. Sonido Y Musica Por Ordenador. 03 Extraccion De Audio. C Dex
 
Modulo 2. Sonido Y Musica Por Ordenador. 02 Sonido En El Sistema Operativo
Modulo 2. Sonido Y Musica Por Ordenador. 02 Sonido En El Sistema OperativoModulo 2. Sonido Y Musica Por Ordenador. 02 Sonido En El Sistema Operativo
Modulo 2. Sonido Y Musica Por Ordenador. 02 Sonido En El Sistema Operativo
 
Modulo 1. Sonido Y Musica Por Ordenador. 07 Almacenamiento
Modulo 1. Sonido Y Musica Por Ordenador. 07 AlmacenamientoModulo 1. Sonido Y Musica Por Ordenador. 07 Almacenamiento
Modulo 1. Sonido Y Musica Por Ordenador. 07 Almacenamiento
 
Modulo 1. Sonido Y Musica Por Ordenador. 06 El Audio
Modulo 1. Sonido Y Musica Por Ordenador. 06 El AudioModulo 1. Sonido Y Musica Por Ordenador. 06 El Audio
Modulo 1. Sonido Y Musica Por Ordenador. 06 El Audio
 
Modulo 1. Sonido Y Musica Por Ordenador. 05 El Midi
Modulo 1. Sonido Y Musica Por Ordenador. 05 El MidiModulo 1. Sonido Y Musica Por Ordenador. 05 El Midi
Modulo 1. Sonido Y Musica Por Ordenador. 05 El Midi
 
Modulo 1. Sonido Y Musica Por Ordenador. 04 El Estudio De Sonido. Edicion
Modulo 1. Sonido Y Musica Por Ordenador. 04 El Estudio De Sonido. EdicionModulo 1. Sonido Y Musica Por Ordenador. 04 El Estudio De Sonido. Edicion
Modulo 1. Sonido Y Musica Por Ordenador. 04 El Estudio De Sonido. Edicion
 
Modulo 1. Sonido Y Musica Por Ordenador. 03 El Sonido Y Su Representacion
Modulo 1. Sonido Y Musica Por Ordenador. 03 El Sonido Y Su RepresentacionModulo 1. Sonido Y Musica Por Ordenador. 03 El Sonido Y Su Representacion
Modulo 1. Sonido Y Musica Por Ordenador. 03 El Sonido Y Su Representacion
 
Modulo 1. Sonido y musica por ordenador. 02 El ordenador en el aula.
Modulo 1. Sonido y musica por ordenador. 02 El ordenador en el aula.Modulo 1. Sonido y musica por ordenador. 02 El ordenador en el aula.
Modulo 1. Sonido y musica por ordenador. 02 El ordenador en el aula.
 
00 Sonido y musica por ordenador. Guia del alumno.
00 Sonido y musica por ordenador. Guia del alumno.00 Sonido y musica por ordenador. Guia del alumno.
00 Sonido y musica por ordenador. Guia del alumno.
 
00 Sonido y musica por ordenador. Caso 20
00 Sonido y musica por ordenador. Caso 2000 Sonido y musica por ordenador. Caso 20
00 Sonido y musica por ordenador. Caso 20
 

Último

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfJulian Lamprea
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxLolaBunny11
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITMaricarmen Sánchez Ruiz
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 

Último (13)

Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Desarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdfDesarrollo Web Moderno con Svelte 2024.pdf
Desarrollo Web Moderno con Svelte 2024.pdf
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
Presentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptxPresentación guía sencilla en Microsoft Excel.pptx
Presentación guía sencilla en Microsoft Excel.pptx
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 

77 Php. Celdas Multiples, Encabezados Y Pies De Pagina

  • 1. Celdas múltiples, encabezados y pies de página Celdas con Encabezados, pies de página y saltos automáticos saltos de línea <? # include y define idénticos a los anteriores La función Cell, estudiada en la página anterior, no interpreta los include("fpdf.php"); saltos de línea y, en el caso de que define('FPDF_FONTPATH','c:/Apache/htdocs/cursoPHP/fontsPDF/'); la cadena de texto sea más larga # creamos una clase extendida de la clase FPDF que el ancho de la celda, escribirá class GranPDF extends FPDF { fuera de sus márgenes. # incluimos la funcion Header (debe ser definida con este nombre) # que se ejecuta cada vez que se añade una página, sea en forma La clase FPDF dispone de la # manual o en forma automática. función: # Nos permite insertar los encabezados de todas las páginas del $obj->MuliCell(a,h,text,b,aln,r) # documento function Header(){ donde a es el ancho de la celda (si #insertamos un salto de línea de 2 mm. a partir se indica cero ocupará hasta el #del margen superior margen derecho de la página), h $this->Ln(2); es el alto de cada una de las # establecmos color y estilo de letra del encabezado celdas aunque, en la práctica, se $this->SetTextColor(0,0,0); comporta de forma idéntica al $this->SetFont("Times","I", 11); interlineado de un procesador de textos), text es la cadena de texto # establecemos una celda cuyo ancho es cero (o variable que lo contiene) a # de esta forma se extenderá hasta el margen derecho insertar. # ocupando toda la caja de texto de la página. # le ponemos unicamente brode inferior, texto centrado b es un parámetro que puede # sin relleno y le adjudicamos como parámetro de posición valer: 0 (sin bordes); 1 (con # de la celda siguiente 1 de forma que comience en el margen bordes), y también: L (borde por # izquierdo de una línea nueva el lateral izquierdo de la celda); T $this->Cell(0,8,"La Regenta",'B',1,'C',0); (borde por la parte superior), R # colocamos un salto de línes de 3 milimetros para separar el (línea de borde en el margen # encabezado de los textos de la página derecho), B (línea de borde en la parte inferior) ó agrupaciones de $this->Ln(3); estos últimos valores, en cualquier } orden, tales como: LR ó TB, # incluimos la funcion Footer (debe ser definida con este nombre) etcétera. # para insertar pies de página cada vez que cree una página nueva function Footer(){ El parámetro aln indica la $this->Ln(2); alineación horizontal que han de $this->SetTextColor(0,0,0); tener los textos y permite los $this->SetFont("Arial","I", 9); valores: L (izquierda); C (centro); # en este caso incluimos el número de página con un borde superior R (derecha) ó J (justificado). # de la celda, texto centrado y tambien activando la celda Por último, el parámetro r siguiente (relleno) especifica si a las celdas # de modo que se produzca un saldo de línea se les aplicará (valor 1) un color $this->Cell(0,5,"Página ".$this->PageNo(),'T',1,'C',0); de fondo o si se va a tratar (valor } 0) de un fondo transparente. } # acabada la inserción de la clase extendida continuamos con el código El comportamiento de esta función tiene las siguientes # establecemos las dimensiones del documento particularidades: $dimensiones=array (140,200); # creamos un nuevo objeto pero ¡cuidado! utilizaremos • Inserta los saltos de línea # la clase extendida GranPDF contenidos en el fichero origen y $MiPDF=new GranPDF('P','mm',$dimensiones); los incluidos en la cadena de texto # ajustamos al 100% la visualización mediante la secuencia de escape $MiPDF->SetDisplayMode('fullpage'); n. # añadimos la primera página del documento. La ejecución de esta función • Inserta saltos de línea # disparará la ejecución de las funciones Header() y Footer() de la automáticos en el momento en # clase extendida y, por tanto, incluirá en el documento los encabezados que el texto alcanza el borde # y pies de página allí establecidos derecho de la celda. $MiPDF->Addpage(); # cambiamos el estilo de fuente a "normal" • Si AutoPageBreak está activado $MiPDF->SetFont('Times','',12); inserta saltos de página # leemos un fichero de texto y lo recogemos en una variables automáticos en el momento en $f1=fopen('regenta.txt','r'); que el texto alcanza el margen $regenta1=fread($f1,filesize('regenta.txt')); inferior de la página. fclose($f1); # insertamos el fichero mediante Multicell Encabezados # el ancho 0 establece que la celda ocupará desde el margen y pies de página # izquierdo hasta el derecho. La interlinea será de 4mm. # el texto que se incluirá (con salto de línea automático La clase FPDF contiene dos # e inserción automática de nuevas páginas) será el recogido métodos (funciones) llamados: # del fichero de texto. La celda no tendrá bordes Header() y Footer(). # el texto estará justificado y no tendrá relleno de fondo. $MiPDF->Multicell(0,4,$regenta1,0,'J',0); Si editamos el fichero fpdf.php # establecemos la visualización del documento podemos ver que ambas están $MiPDF->Output();?> vacías (no contienen ninguna instrucción) presentando una sintaxis como esta: Ejemplo141.php function Header(){ // comentario } El ejemplo siguiente es una adaptación del ejemplo139 al uso de encabezados y pies de y página. function Footer(){ Ver código fuente ejemplo142.php // comentario } Ambas son invocadas de forma automática cada vez que se <?
  • 2. ejecuta la función AddPage() y, # incluimos la clase fpdf.php y la constante FPDF_FONTPATH eso permite crear otras funciones include("fpdf.php"); a medida, con igual nombre, e define('FPDF_FONTPATH','c:/Apache/htdocs/cursoPHP/fontsPDF/'); incluirlas en una clase extendida. # creamos la clase GranPDF extendida de fpdf.php Recuerda que los métodos de la class GranPDF extends FPDF { clase extendida prevalecen sobre # definimos dos nuevas variables internas los que pudieran existir en la clase # el identificador de la columna actual padre con su mismo nombre. Por # y el valor de la ordenada de inicio de las columnas esta razón, las nuevas funciones var $columna_actual=0; de la clase extendida nos var $ordenada_inicio=21; permitirían incluir encabezados y # la función Header se comporta de forma idéntica al ejemplo anterior pies de página en cada una de las function Header(){ nuevas páginas añadidas mediante AddPage(). $this->SetTextColor(0,0,0); $this->SetFont("Times","I", 11); El procedimiento sería este: $this->Cell(0,8,"La Regenta",'B',1,'C',0); $this->Ln(3); • Creamos una clase extendida de } la clase original FPDF. # Footer es similar al caso anterior con la única diferencia que • Incluimos en esta nueva clase function Footer(){ funciones con nombres Header() $this->SetY(-20); y Footer() (no podemos modificar $this->Ln(2); el nombre ya que han de coincidir $this->SetTextColor(0,0,0); con los nombres de las funciones $this->SetFont("Arial","I", 9); vacias de la clase padre) en las $this->Cell(0,5,"Página ".$this->PageNo(),'T',1,'C',0); que indicamos los contenidos que } han de insertarse (y su posición) function AcceptPageBreak(){ mediante cada una de ellas. • Al # al alcanzar el margen inferior se activa esta función crear el nuevo objeto mediante: # que comprueba si el punto de inserción está en la columna $obj= new nombre_clase() # primera (0) ó en la segunda if($this->$columna_actual==0){ utilizaremos el nombre el de la # cambia el valor del número de columna a 1 (pasa a la segunda) clase extendida que hemos $this->$columna_actual=1; creado para incluir estas funciones. # cambia el punto de inserción a la coordenada de inicio # que es la parte superior de la página De esta forma, cada vez que se ejecuta AddPage() (añadir una $this->SetY($this->ordenada_inicio); nueva página) se ejecutarán # cambia el margen izquierdo de modo que el texto también Header() y Footer() que, # aparezca en la columna derecha (a partir de los 72.5 mm). al no ser ya funciones vacías, # más abajo está comentada la razon de estos valores realizarán una inclusión de $this->SetLeftMargin(72.5); contenidos en cada una de las # cambia el punto de insercion al nuevo margen izquierdo páginas del documento. $this->SetX(72.5); # establecemos que la función devuelva false Gestión de la inserción # con ello no se produce un salto de página automática de páginas # y el punto de inserción se translada a las # coordenadas indicadas en las instrucciones anteriores return false; La clase FPDF contiene esta }else{ función: # si la columna es la segunda (no es la cero) function AcceptPageBreak(){ # cambia a la primera, asigna el valor cero // comentario $this->$columna_actual=0; return $this->AutoPageBreak; # cambia el punto de inserción a la coordenada de inicio } # que es la parte superior de la página $this->SetY($this->ordenada_inicio); que igual que ocurría con Header() # cambia el margen izquierdo de modo que el texto y Footer() es invocada en el # aparezca en la columna izquierda (a partir de los 10 mm). momento en que encuentra un salto de página y dependiendo del $this->SetLeftMargin(10); valor que devuelva (true ó false) # cambia el punto de insercion al nuevo margen izquierdo se ejecuta ó no la funcion AddPage $this->SetX(10); (). # establecemos que la función devuelva true # con ello genera un salto de página Tal como está diseñada esta clase # y la insercion de texto continua en la pagina siguiente devolverá el valor que tenga return true; asignado AutoPageBreak() (true ó } false) pero, igual que ocurría con } Header() y Footer() permite incluir otra función con el mismo nombre } en una clase extendida. La /* establecemos el tamaño de la página condición de la nueva función es que tendrá 140 mm. de ancho. que, al igual que ocurre con esta, Si establecemos un margen por la izquierda de 10 mm. habrá de devolver un valor un margen por la derecha de otros 10 mm. booleano (cierto ó falso). y un espacio entre columnas de 5 mm. nos restan 140-25=115 mm. que repartidos entre dos columnas Esta posibilidad añade nuevas e les darían un ancho de 115/2=57,5 mm. interesantes funcionalidades al uso Las primera columna comenzará en 10 y acabará en de la clase FPDF. Una de las posibilidades podría ser la de crear 10 +57,5=67.5 mm. La segunda deberá empezar en documentos con varias columnas 72.5 (añadiendo 5 mm. de espacio entre columnas */ (estilo periodístico). La forma de $dimensiones=array (140,200); proceder (una de las posibles) la # creamos el nuevo objeto partiendo de la clase ampliada tienes descrita en el ejemplo que $MiPDF=new GranPDF('P','mm',$dimensiones); hemos incluido a la derecha. # ajustamos al 100% la visualización $MiPDF->SetDisplayMode('fullpage'); Otras opciones # insertamos la primera página del documento $MiPDF->Addpage(); # cambiamos el estilo de fuente a "normal" Además de las funciones que $MiPDF->SetFont('Times','',12); hemos descrito a lo largo de esta # establecemos un color de fondo para las celdas de texto página, existen clases extendidas que incluyen nuevas, y en algunos # y el color de la tipografia casos muy interesantes, funciones $MiPDF->SetFillColor(240,240,240); que resuelven problemas $MiPDF->SetTextColor(0,0,0); específicos concretos a la hora de # leemos un fichero de texto y lo recogemos en una variables crear ficheros PDF. Algunas de $f1=fopen('regenta.txt','r'); ellas están disponibles desde el $regenta1=fread($f1,filesize('regenta.txt'));
  • 3. propio sitio FPDF de Olivier fclose($f1); PLATHEY. # insertamos el fichero mediante Multicell Una de las utilidades más # el ancho 57.5 estable el ancho de columna igual interesantes -desde luego que ni # para la derecha que para la izquierda La interlinea será de 4mm. mucho menos únicas- de este tipo # el texto que se incluirá (con salto de línea automático de formatos podría ser la # e inserción automática de nuevas páginas cuando se hayan completado paginación de los resultados de las # las dos columnas) será el recogido consultas en bases de datos. # del fichero de texto. La celda no tendrá bordes # el texto estará justificado y SI tendrá relleno de fondo. Cuando nos encontremos en esa $MiPDF->Multicell(57.5,4,$regenta1,0,'J',1); situación podremos utilizar un # establecemos la visualización del documento procedimiento casi idéntico al usado en el ejemplo sobre las $MiPDF->Output();?> tablas de alimentos. No importaría el tamaño del fichero de texto (número de Ejemplo143.php páginas que pudiera ocupar) ni el número de registros obtenidos como resultado de una consulta a Ejercicio nº 37 una base de datos. Sería la propia clase FPDF quien se encargaría de Crea un documento PDF en formato A-5 con orientación vertical. Debe incluir un encabezado crear las páginas necesarias de un (a modo de logotipo) compuesto por un dibujo creado mediante la funciones PDF. Además, documento con un formato preestablecido. habrá de incluir un texto enmarcado y una fotografía centrada en el documento. Anterior Indice Siguiente