Cómo leer y modificar una imagen en PHP
Anuncio:
Vamos a ver cómo leer y modificar una imagen en PHP. Lo que vamos a hacer es escribir texto en una imagen. En primer lugar, en nuestro directorio, vamos a tener una imagen, img.jpg (también puede ser PNG), la fuente que vamos a usar y nuestro archivo imagen.php donde vamos a tratar la imagen en PHP. En este caso vamos a usar Arial, puedes descargar la fuente Arial en formato TTF de Git.
En primer lugar vamos a definir el header de nuestro archivo con:
header('Content-Type: image/jpeg');
Ahora, vamos a leer la imagen en PHP con:
$im = imagecreatefromjpeg('img.jpg');
Ya tenemos cargada nuestra imagen en PHP. Lo que vamos a hacer ahora, es definir el texto, la fuente y el color que vamos a escribir en la imagen:
$negro = imagecolorallocate($im, 0, 0, 0);
$texto = 'XXXX';
$fuente = './arial.ttf';
A la hora de definir la fuente, es importante que indiques la rula relativa ./ ya que yo he tenido problemas al indicar solo el nombre. Vamos a poner el texto en la imagen:
imagettftext($im, 20, 0, 100, 140, $negro, $fuente, $texto);
Los parámetros de la función imagettftext son:
– La imagen
– Tamaño del texto
– Ángulo de inclinación
– Desplazamiento en el eje X
– Desplazamiento en el eje Y
– Color del texto
– Fuente del texto
– Texto
Ahora, podemos ver la imagen en pantalla con
imagejpeg($im, NULL, 100);
// o bien con
imagejpeg($im);
O bien podemos guardarlo en un nuevo archivo con:
imagejpeg($im, "./ruta/nombre.jpg", 100);
Los parámetros de la función imagejpeg son:
– La imagen
– Ruta donde la guardaremos, en caso de mostrar en pantalla poner NULL (Parámetro opcional)
– Calidad de compresión. (Opcional)
Con esto ya hemos leído una imagen y modificado poniendo un texto en PHP.
Puedes aprender más en nuestra sección de PHP.
Espero que te haya sido de utilidad.