Lenguaje PHP

Imprimir texto sobre una imagen en PHP

En algunas ocasiones es necesario colocar texto encima de una imagen dependiendo del ingreso de una cadena de texto, ya sea resultado de la base de datos Mysql, por ejemplo el nombre de un usuario, grabado en una imagen.

Con esta pequeño código PHP podremos lograr insertar texto encima de una imagen determinada, en este script identificaremos la ruta de la imagen que utilizaremos para tal evento, y también configurar los Font, color del texto de salida.

Imprimir texto sobre una imagen en PHP

El texto que utilizaremos, pero en este ejemplo no utilizaremos resultados de mysql, en si lo haremos de un texto ingresado vía código solo para demostración y a la hora de cargar la página mostrara tal impresión encima de la imagen.

<?php
$string = 'Texto tipeado por el usuario';
$font = 2; // Fuente definida por PHP. Lee la documentación para más información: http://www.php.net/manual/es/image.examples.php
$w = ( imagefontwidth( $font ) * strlen( $string ) ) + 10; // Ancho de la imagen. En este caso tendrá un margen de 5px por lado.
$h = imagefontheight( $font ) + 10; // Altura de la imagen. Mismo margen (padding, en CSS).
$im = imagecreatetruecolor( $w, $h ); // Crea una estructura de datos.
$text_color = imagecolorallocate( $im, 255, 255, 255 ); // Color del texto en la imagen.
imagestring( $im, $font, 5, 5, $string, $text_color ); // Esta es la línea que dibuja el texto en la imagen. Lo anterior era un "esqueleto".
imagepng( $im, 'test/imagen.png' ); // Crea la imagen y la guarda donde le digas (en este caso test/imagen.png). La carpeta debe tener permisos 777.
imagedestroy( $im ); // Destruye la estructura de datos
echo '<img src="test/imagen.png" />'; // Muestras la imagen.
?>
texto sobre una imagen en PHP
texto sobre una imagen en PHP

Nestor Tapia

Bloggero, amante de la programación PHP, innovador y me fascina compartir información. Desde que conocí el entorno informatico y el internet me llamó la atención la programación, Por tal motivo he creado mi blog BAULPHP.COM para compartir mis experiencias con todos ustedes. ¡Gracias por leerme!.
Botón volver arriba