imagefttext

(PHP 4 >= 4.0.7, PHP 5, PHP 7)

imagefttextEscribir texto en la imagen usando fuentes mediante FreeType 2

Descripción

imagefttext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text [, array $extrainfo ] ) : array

Parámetros

image

Un recurso image, es devuelto por una de las funciones de creación de imágenes, como imagecreatetruecolor().

size

El tamaño de la fuente que va a ser usada, en puntos.

angle

El ángulo en grados, siendo 0 grados la lectura del texto de izquierda a derecha. Valores mayores representan una rotación en sentido contrario al de las agujas del reloj. Por ejemplo, un valor de 90 resultaria en la lectura de texto de abajo a arriba.

x

Las coordenadas dadas por x e y definirán el punto de referencia del primer carácter (aproximadamente la esquina inferior izquierda del carácter). Esto es diferente de imagestring(), donde x e y definen la esquina superior izquierda del primer carácter. Por ejemplo, "superior izquierda" es 0, 0.

y

La coordenada y. Esto establece la posición de la línea base de las fuentes, no la del pie del carácter.

color

El índice del color deseado para el texto, véase imagecolorexact().

fontfile

La ruta de la fuente TrueType que se desea usar.

Dependiendo de la versión de GD que esté usando PHP, cuando fontfile no comienza con un / inicial, .ttf será añadido al nombre de archivo, y la biblioteca intentará buscar ese nombre de archivo en una ruta de biblioteca definida de fuentes.

Cuando se usan versiones de la biblioteca GD anteriores a 2.0.18, un carácter espacio, en vez de un punto y coma, es usado como el 'separador de ruta' para diferentes archivos de fuente. El uso involuntario de esta característica resultará en en el mensaje de advertencia: Warning: Could not find/open font. La única solución para estas versiones afectadas es mover la fuente a una ruta que no contenga espacios.

En muchos casos donde una fuente reside en el mismo derectorio que el script, el siguiente truco paliará cualquier problema de inclusión.

<?php
// Establecer la variable de entorno para GD
putenv('GDFONTPATH=' realpath('.'));

// Nombrar la fuente que va ser usada (observe la ausencia de la extensión .ttf)
$fuente 'UnaFuente';
?>

text

Texto que va a ser insertado en la imagen.

extrainfo

Posibles índeces de matriz para extrainfo
Clave Tipo Significado
linespacing float Define el espacio entre líneas

Valores devueltos

Esta función devuelve una matriz que define los cuatro puntos de la caja, comenzado por el inferior izquierdo y moviéndose en el sentido de las agujas del reloj:

0 esquina inferior izquierda, posición X
1 esquina inferior izquierda, posición Y
2 esquina inferior derecha, posición X
3 esquina inferior derecha, posición Y
4 esquina superior derecha, posición X
5 esquina superior derecha, posición Y
6 esquina superior izquierda, posición X
7 esquina superior izquierda posición Y

Ejemplos

Ejemplo #1 Ejemplo de imagefttext()

<?php
// Crear una imagen de 300x100
$im imagecreatetruecolor(300100);
$rojo imagecolorallocate($im0xFF0x000x00);
$negro imagecolorallocate($im0x000x000x00);

// Hacer el fondo rojo
imagefilledrectangle($im0029999$rojo);

// Ruta a nuestro archivo de fuente ttf
$archivo_fuente './arial.ttf';

// Dibuja el texto 'PHP Manual' usando un tamaño de fuente de 13
imagefttext($im13010555$negro$archivo_fuente'PHP Manual');

// Imprimir la imagen al navegador
header('Content-Type: image/png');

imagepng($im);
imagedestroy($im);
?>

Notas

Nota: Esta función sólo está disponible si PHP fue compilado con suporte de freetype (--with-freetype-dir=DIR)