RSS

Archivo de la categoría: FPDF

Generar gafetes en PDF desde PHP

Ya que tenemos la funcionalidad de subir imágenes en el post anterior, acá  vamos a hacer que se generen en PDF los gafetes/credenciales/identificaciones de los registrados en la base de datos

Acá les dejo el enlace de descarga a googleDrive del directorio completo de trabajo de este ejemplo (solo salta la publicidad y listo)

El diseño consta de lo siguiente:

Leer más…

Anuncios
 
10 comentarios

Publicado por en 4 julio, 2014 en FPDF, PHP

 

Etiquetas: , , , ,

FPDF: Llenar formatos (Llenado 3/3)

Bueno, para concluir, se colocarán en las respectivas posiciones las celdas que contendrán la información que se recibe de la base de datos.

Para ello necesitaremos lo siguiente: haremos la llamada a la base de datos la cual nos regresará un arreglo asociativo con la información, en este caso de ejemplo, los datos de una persona. También requerimos otro arreglo asociativo de coordenadas (x, y). Una vez teniendo ambos arreglos, se pondrán en un ciclo y se extraerá un par de coordenadas que se le pasarán al método SetXY que colocará la celda en la posición que se asigne, y a su vez, se extraerá un dato de la persona y se la pasará al método Cell.

El arreglo de coordenadas, en este caso se me facilitó porque usé para colocar la información dentro del formato, líneas con el método Line. Cabe mencionar que el primer parámetro que requiere el método Line es donde comienza la línea. Así que, para saber dónde iría cada celda solo me fijé en este primer parámetro y aumenté 2 unidades a la derecha (coordenada X) y una unidad hacia arriba (coordenada Y) y este par es el que coloqué en el arreglo de coordenadas. Por ejemplo: Line(40, 50, 70, 50); <– para colocar la celda sería: SetXY(42, 49) Cell (parámetros…)

Quedará más claro viendo el código 🙂 Espero que los comentarios del código ayuden 😀

Leer Más…

 
22 comentarios

Publicado por en 10 diciembre, 2013 en FPDF, PHP

 

Etiquetas: ,

FPDF: Llenar formatos (Diseño 2/3)

Como lo he dicho a varios de mis lectores, en definitiva, diseñar un formato lleva su tiempo. Se ha de diseñar primeramente un bosquejo a lápiz y papel para tener una idea general del diseño y definir cuáles métodos se han de usar en el código y lograr el diseño requerido.

En esta ocasión les presento un formato con un diseño sencillo el cual utiliza un margen decorativo y dos imágenes que se colocan con el método Image. Hago uso del método Line que dibuja una línea recta y celdas sin borde.

Evidentemente un diseño será tan complejo como se requiera, acá el punto es solo demostrar que los datos que obtengamos también se pueden colocar en posiciones distintas y no solo en tablas y reportes.

La carpeta de trabajo contendrá: index.php, PDF.php, carpeta de la librería y 3 imágenes. En este ejemplo el archivo PDF.php no contendrá ningún código, simplemente pondremos la clase extendida PDF de FPDF para poder usar en index.php objetos de FPDF.

Veamos el código y la salida:

Leer Más…

 
6 comentarios

Publicado por en 9 diciembre, 2013 en FPDF, PHP

 

Etiquetas: ,

FPDF: Llenar formatos (Introducción 1/3)

Este tutorial nace de una sugerencia de un lector del blog 🙂 Me comentaba que ya podía hacer tablas y reportes como el de las entradas anteriores. El detalle es que están en una posición única. Se encontró con que ahora tenía que hacer un formato y llenarlo con la información extraída de la base de datos. Ya que es un formato, los campos con la información deben estar en ciertas posicione dentro de la hoja.

La siguiente imagen muestra el bosquejo de un formato; los recuadros morados son precisamente la información que se extrae de la base de datos y que se han de acomodar en la hoja. Notar que ahora ya no están mostrados en una tabla, sino que ahora, están esparcidos en diferentes posiciones.

Bosquejo de un formato

Bosquejo de un formato

Leer Más…

 
Deja un comentario

Publicado por en 9 diciembre, 2013 en FPDF, PHP

 

Etiquetas: , ,

FPDF: Rectas Curiosas :D

Bueno, esta entrada es sobre la anécdota con la que recuerdo siempre mi primer acercamiento al mundo de la computadoras e informática. A su vez, siempre que tengo ‘ratos libres’ me pongo a hacer esta figura hecha solo con líneas rectas.

Aquel día cuando la primera computadora PC llegó a casa fue un momento especial; por mi mente solo pasaba: Juegos, juegos y más juegos 😀 En mi corta edad creía que la computadora era solo para tener miles de juegos y escribir tareas aburridas en word  xD

Cuando la encendí el primer día me estuve varias horas en un ‘programilla’ llamado paint, ese fue mi primer contacto informático. Hice diferentes figuras y las rellené de varios colores, pinté a mano alzada, borraba con la goma, me acercaba con la lupa, en fin. Después de las largas horas que se me habían pasado en estar ahí, las ideas se venía abajo pero…

Leer Más…

 
2 comentarios

Publicado por en 2 diciembre, 2013 en FPDF, PHP

 

Etiquetas:

FPDF: Reporte dinámico

Ahora toca el turno a hacer un reporte dinámicamente extrayendo de la base de datos mediante un SELECT.

Aunque pareciera más “difícil” por el hecho de obtener los datos de la base de datos… no lo es :). De hecho es tan sencillo como retornar un array asociativo, como el de los ejemplos anteriores, en la clase dedicada a la base de datos y listo.

Los métodos que se han usado antes, son exactamente los mismos, acá lo único que se agregará, son los dos archivos necesarios para la comunicación con la base de datos y mediante el método donde se realice el SELECT, devuelva un arreglo asociativo.

En el index.php se creará un objeto de la clase myDBC.php y en una variable se guardará el array asociativa que regresa el método que hace el SELECT, es decir, el método seleccionar_datos( ). Después, esta variable se le pasa al método tablaHorizontal( ).

Leer Más…

 
38 comentarios

Publicado por en 28 noviembre, 2013 en FPDF, PHP

 

Etiquetas: , ,

FPDF: Celdas redondeadas

En la librería FPDF como tal, no existen las celdas con borde redondeado pero gracias a la misma comunidad que comparte sus códigos, hubo quien modificó el método Rect (que dibuja un rectángulo) para que se generará rectángulos con borde redondeado. En el futuro habrá quien modifique y comparta el código para que el mismo método Cell tenga como opción de parámetro que la celda tenga borde redondeado.

Ya que no existe existe (aún) la propiedad que necesitamos, pero tenemos lo antes mencionado… ¡a darle! 😀 Cabe mencionar que la librería FPDF permite traslapar posiciones (x, y) y con esto, poner en la misma posición varios métodos.

En esta ocasión lo que haremos en términos generales es lo siguiente: crear la tabla como la hemos venido haciendo pero sin borde y, en cada paso del ciclo para formar los tres campos, agregaremos un solo rectángulo redondeado del tamaño de los mismos. Y en este caso, el relleno de celda lo tendrán los rectángulos y no las celdas.

Veamos el código, espero que los comentarios sean explicativos xD Pero sino, dejen su comentario 🙂

Leer Más…

 
Deja un comentario

Publicado por en 27 noviembre, 2013 en FPDF, PHP

 

Etiquetas: , , ,

FPDF: Ajustar texto en celdas

Ahora bien, ¿qué pasa si en la cabecera, un título tiene más caracteres o uno de nuestros datos y por lo tanto no quepan en el ancho de celda que escogimos? pasa esto:

Datos que sobrepasan la celda

Datos que sobrepasan la celda

Para solucionar esto, colocaremos en nuestra clase de PDF.php una serie de métodos que ajustan el texto a la celda. Este código es proporcionado por la propia comunidad de fpdf.org en la opción de su página principal llamada “Scripts”.

Al final de los métodos que ya tenemos, colocaremos este código. El método que usaremos se llama CellFitSpace( ) el cual sustituirá a Cell( ). El código de PDF.php es el siguiente:

Leer Más…

 
13 comentarios

Publicado por en 26 noviembre, 2013 en FPDF, PHP

 

Etiquetas: , ,

FPDF: Estilo de Celdas

Ahora vamos a darle estilo a la tabla que estamos generando. A la cabecera le colocaremos un verde tenue al fondo de las celdas y el texto será blanco. A los datos de la tabla haremos haremos un ‘truquillo’ para alternar entre filas. Es decir, una fila será color gris y otra será sin fondo. Ya veremos 🙂

Cabe señalar que este ‘truqillo’ para alternar el fondo de cada fila, lo vi en otras ocasiones con una serie de if anidados y con un ciclo for, muy complicado :S. Pero analizando un poco aquél código, me di cuenta que lo único que se necesitaba era colocar una variable bandera que variará su valor en cada iteración. A su vez, este valor de la bandera pasarlo al método Cell( ) para que rellene o deje vacía la celda.

Veamos el código 😉

Leer Más…

 
8 comentarios

Publicado por en 25 noviembre, 2013 en FPDF, PHP

 

Etiquetas: , ,

FPDF: Reporte estático

Ahora les mostraré cómo hacer un reporte estático con un arreglo de arreglos, es decir, recibirá un arreglo de tipo:

$misDatos = array(
array(‘nombre’ => ‘Hugo’, ‘apellido’ => ‘Martínez’, ‘matricula’ => ‘20420423’),
array(‘nombre’ => ‘Araceli’, ‘apellido’ => ‘Morales’, ‘matricula’ => ‘204909’),
array(‘nombre’ => ‘Georgina’, ‘apellido’ => ‘Galindo’, ‘matricula’ => ‘2043442’),
array(‘nombre’ => ‘Luis’, ‘apellido’ => ‘Dolores’, ‘matricula’ => ‘20411122’),
array(‘nombre’ => ‘Mario’, ‘apellido’ => ‘Linares’, ‘matricula’ => ‘2049990’),
array(‘nombre’ => ‘Viridiana’, ‘apellido’ => ‘Badillo’, ‘matricula’ => ‘20418855’),
array(‘nombre’ => ‘Yadira’, ‘apellido’ => ‘García’, ‘matricula’ => ‘20443335’));

Usaremos el método cabeceraHorizontal( ) y el método de datosHorizontal( ). Éste último es el que modificaremos, agregando una celda para cada $clave del array, es decir, una celda para nombre,, otra para apellido y finalmente una para matrícula.

Al final de este código, integramos en un método llamado tablaHorizontal( ) ambos métodos de cabecera y datos, para que en el index.php solo usar un método que reciba dos arreglos

Veamos el código:

Leer Más…

 
1 comentario

Publicado por en 22 noviembre, 2013 en FPDF, PHP