Insertar una imagen en un PDF con la libreria FPDF y PHP

La funciona image permite insertar imagenes JPG, PNG en este post veremos como insertar imágenes en un documento PDF con la libreria FPDF y PHP.

Este artículo es parte de la Guía de para crear Reportes con FPDF, PHP y MySQL Aprende a generar reportes dinamicos para tus propios sistemas. Ver la Guía Completa →

Este articulo parte de que ya saben como crear un PDF y lo vimos en el articulo Crear un PDF con FPDF y PHP les invito a leerlo.

Código

Les muestro el código para crear el PDF e Insertar la imagen.

<?php
/**
 * Generación de PDF con Imágenes y Enlaces
 * Librería: FPDF
 * Author: @evilnapsis
 */

// 1. Inclusión de la librería FPDF
include "fpdf/fpdf.php";

// 2. Instancia de la clase y configuración de página
$pdf = new FPDF();
$pdf->AddPage();

// 3. Configuración de título
$pdf->SetFont("Arial", "B", 24); // Fuente Arial, Negrita, Tamaño 24
$pdf->SetY(20);                  // Posición Vertical
$pdf->SetX(10);                  // Posición Horizontal
$pdf->Cell(0, 10, utf8_decode("Insertar Imagen en FPDF PHP"), 0, 1, "C");

// 4. Inserción de la Imagen
/**
 * Parámetros del método Image:
 * 1. Ruta del archivo: "ssbu.jpg"
 * 2. Posición X (mm): 60
 * 3. Posición Y (mm): 50
 * 4. Ancho (w): 100 (Si se deja en 0, se calcula automáticamente)
 * 5. Alto (h): 70  (Si se deja en 0, se calcula automáticamente)
 * 6. Tipo: 'JPG' (Opcional si la extensión es clara)
 * 7. Enlace: URL o identificador de enlace interno
 */
$pdf->Image("ssbu.jpg", 55, 60, 100, 70, 'JPG', "https://evilnapsis.com/");

// 5. Salida del documento al navegador
$pdf->Output();
?>

 

En  la linea 16 del código anterior se especifica la función para insertar imagen, la cual tiene 7 parámetros:

  1. Nombre de la imagen con su extensión: ssbu.jpg
  2. Posición en X
  3. Posición en Y
  4. Ancho de la imagen
  5. Alto de la imagen
  6. Tipo de archivo o formato
  7. Link

Ustedes pueden cambiar los parámetros según lo requieran.

Los últimos 2 parámetros son opcionales, sin estos parámetros, insertaríamos la imagen de esta forma:

$pdf->Image("ssbu.jpg",60,50, 100, 70);

Análisis de Parámetros: $pdf->Image()

La sintaxis que proporcionaste se desglosa de la siguiente manera:

  1. "ssbu.jpg" (Ruta): El nombre o ruta del archivo de imagen (soporta JPG, PNG y GIF).
  2. 60 (Posición X): La distancia en milímetros desde el borde izquierdo de la página.
  3. 50 (Posición Y): La distancia en milímetros desde el borde superior de la página.
  4. 100 (Ancho/Width): El tamaño horizontal que ocupará la imagen en el reporte.
  5. 70 (Alto/Height): El tamaño vertical de la imagen.

Resultado

El resultado al ejecutar el código seria el siguiente:

Descargar

Les dejo un link de descarga con el ejemplo y la librería fpdf.

Link: https://drive.google.com/file/d/1KbZ4Bo-0ngfMS0KzOpZw-wopyDBqLwlc/view?usp=sharing

Espero les ayude.

Saludos

Leave a Reply

Your email address will not be published. Required fields are marked *

Discover more from Evilnapsis

Subscribe now to keep reading and get access to the full archive.

Continue reading