Desarrollador de aplicaciones web y de escritorio, amante de la tecnología y autodidacta, me gusta conocer otras tecnologías, escribir artículos para compartir en la web y para estar al tanto en los nuevos paradigmas, respeto las políticas de software privativo y libre, ya que estas políticas son las normas que permite el desarrollo tecnológico social de la humanidad. filvovmax@gmail.com -- info@gitmedio.com
4 librerías para generar reportes PDF con PHP y MySQL
En este artículo se menciona 4 librerías para generar reportes PDF con PHP y MySQL. Un sistema que gestiona grandes cantidades de información siempre requerirá mostrar información a través de un reporte o informe, que cuyos resultados pueden ser mostrados en forma de imágenes, texto y entro otros, para los distintos usuario.
A continuación listamos las librerías que permiten generar reportes en el formato de archivo PDF.
1.- FPDF Es una librería escrita en php para crear archivos y visualizar en el navegador en formato PDF, la librería está escrita utilizando paradigma orientado a objetos, es liberado bajo la licencia GPL, se puede usar con fines educativos y comercial.
La biblioteca tiene funciones como:
- Elección de la unidad de medida, formato de página y márgenes
- Gestión de cabeceras y pies de página
- Salto de página automático
- Salto de línea y justificación del texto automáticos
- Admisión de imágenes (JPEG, PNG y GIF)
- Colores
- Enlaces
- Admisión de fuentes TrueType, Type1 y codificación
- Compresión de página.
La biblioteca tiene una amplia documentación para usar en nuestros proyectos.
2.- MPDF es una biblioteca para generar reportes en el formato de archivo PDF, esta liberado bajo la licencia GPL, esta biblioteca está basada en FPDF, HTML2PDF y UPDF por cual algunas características y funciones se ha mejorado considerablemente.
He aquí las características de esta librería.
- Acepta codificación UTF-8 HTML
- Es compatible con casi todos los idiomas, incluyendo RTL (árabe y hebreo), y CJK – (chino-japonés-coreano)
- marcadores
- hojas de estilo CSS
- El espacio entre palabras y espaciado entre caracteres para la justificación
- elementos en bloque anidado (por ejemplo, P, DIV), incluidos los márgenes, bordes y relleno, línea de altura, colores de fondo, etc.
- De apoyo (parcial) para flotar y de posición fija de bloque-elementos
- diseño de página y la orientación
- Texto-justificación y la separación de sílabas
- la numeración de páginas
- Pares e impares de localización, siendo los márgenes de espejo
- encabezados y pies de página
- columnas
- – Tablas tablas anidadas, girada o autosized para que quepa en una página
- Tabla de contenido
- Índice
- Las marcas de agua
- Imágenes en formato JPG, GIF, PNG, SVG, BMP o WMF
- Protección de contraseña
- anotaciones
- Los códigos de barras (EAN 13, UPC-A / E, Código 11, 39, 93, 128, Codabar, MSI, IMB, Planeta, Postnet, RM4SCC etc.)
- Importar otro archivo PDF y utilizar como plantilla
- subconjuntos de fuentes incorporadas
- compatibilidad con PDF / A-1b (ISO 19005-1: 2005)
- PDF / X-1a ayuda.
Existe una amplia documentación y ejemplos para que se pueda usar en nuestros proyectos.
3.- TCPDF, otro magnifico librería para generar informes en PHP, en el formato de archivo PDF, esta librería es de código abierto liberado bajo la licencia GNU-LGPL.
Entre los principales características esta:
- no se necesitan bibliotecas externas para las funciones básicas;
- todos los formatos de página estándar, formatos de página personalizados, márgenes y unidades de medida;
- UTF-8 Unicode y de derecha a izquierda idiomas;
- TrueTypeUnicode, v1 OpenTypeUnicode, TrueType, OpenType v1, Tipo 1 y CID-0 fuentes;
- subconjunto de fuentes;
- métodos para publicar algo de código XHTML + CSS, Javascript y las formas;
- imágenes, gráficos (figuras geométricas) y la transformación de los métodos;
- Admite los formatos JPEG, PNG y SVG imágenes de forma nativa, todas las imágenes soportados por GD (GD, GD2, GD2PART, GIF, JPEG, PNG, BMP, XBM, XPM) y todas las imágenes soportados a través de ImagMagick (http://www.imagemagick.org/ script / formats.php )
- 1D y 2D códigos: Code 39, ANSI MH10.8M-1983, USD-3, 3 de 9, CÓDIGO 93, USS-93, Estándar 2 de 5, Interleaved 2 de 5, Código 128 A / B / C, 2 y extensión basada en la UPC 5 dígitos, EAN 8, EAN 13, UPC-A, UPC-E, MSI, POSTNET, PLANET, RMS4CC (Royal mail Código de cliente de 4 estados), CBC (cliente de código de barras), KIX (índice Klant – índice cliente), correo inteligente de código de barras, OneCode, USPS-B-3200, CODABAR, CÓDIGO 11, Pharmacode, Pharmacode DOS PISTAS, Datamatrix, QR-Code, PDF417;
- Los perfiles ICC JPEG y PNG, escala de grises, RGB, CMYK, tintas planas y transparencias;
- encabezado de página automático y gestión de pie de página;
- el cifrado de documentos de hasta 256 bits y certificaciones de firma digital;
- operaciones de deshacer los comandos;
- anotaciones PDF, incluidos los enlaces, texto y archivos adjuntos;
- los modos de representación de texto (relleno, trazo y recorte);
- modo en varias columnas;
- no escritura regiones de la página;
- marcadores, los destinos con nombre y la tabla de contenidos;
- separación de palabras de texto;
- Texto del estiramiento y el espaciamiento (seguimiento);
- alineaciones salto de página, saltos de línea y de texto automáticos, incluyendo la justificación;
- grupos automáticos de numeración de páginas y páginas;
- mover y eliminar páginas;
- la compresión de página (requiere extensión PHP-zlib);
- Plantillas XObject;
- Capas y visibilidad de los objetos.
- compatibilidad con PDF / A-1b.
Para usar TCPDF ay una amplia documentación y ejemplos, que a partir de ella podremos generar informes de acuerdo a la necesidad del trabajo que se realice.
4.- FPDI es una biblioteca que permite generar y leer páginas de documentos PDF, esta liberado bajo la licencia MIT, esta librería está basada en FPDF que tiene ciertas mejoras y ventajas.
Entre sus características y funciones se muestra a continuación.
- La generación de cabecera
- Mallas para tablas de gran tamaño en varias páginas
- Encabezados de la tabla
- Escribir detrás o delante de una plantilla
- Cambiar el tamaño de una plantilla después de la creación
- Los datos de las plantillas se incluyen en un documento PDFsólo una vez
- Menos uso de memoria
- Menos tiempo de generación
- Archivos PDF más pequeños
- Ayuda de la plantilla recursiva (uso de plantillas en las plantillas)
- Etc..
Para usar esta librería en nuestros proyectos existe documentación y ejemplos
Quizá también te interese algunas librerías que permiten generar documentos PDF en PHP.También existen otras bibliotecas que usted puede optar para usar en su proyecto que a continuación se lista.
Fuentes:
Tengo en una PC linux, cuando imprimo archivos PDF del mismo browser por medio de USB se demora en imprimir, pero por Red imprime rapido, ahora si ese archivo que genero en PDF lo descargo y lo mando de por medio de un programa lector de PDF imprime rapido, he utilizado FPDF 1.81 version de PDF 1.3, tambien dompdf 0.8.2 + CPDF version PDF 1.3, me sale error.
hay algo alguna forma de enviar normal la impresión, pero atraves de windows todo bien.
Una pregunta… es posible crear un pdf con alguna libreria que los objetos multimedia como imagenes del documento pdf esten externos desde fuera del pdf peró que se puedan leer(ver) ?
Gracias
Existe alguna Liberia que permita convertir archivos .docx o .doc a PDF?
hola con wps lo puedes hacer me parece
Porque me sale error cuando intento generar un reporte que tenga i vluido un campo imagen…me Dice que la ruta de la.imagen no la reconoce… me logra traer el logo como una imagen fija pero las imagen de cada producto no.me las quiere mostrar disq porq esa no es la ruta
Hola Jaimico, verifica bien la ruta de la imagen, de la librería que estas usando para generar reportes PDF .