imagettftext

(PHP 3, PHP 4, PHP 5)

imagettftext -- Escribir un texto sobre la imagen usando fuentes TrueType

Descripción

array imagettftext ( resource imagen, float tamanyo, float angulo, int x, int y, int color, string archivo_fuente, string texto )

imagen

El recurso de imagen. Vea imagecreate().

tamanyo

El tamaño de la fuente. Dependiendo de su versión de GD, éste puede ser especificado como el tamaño en píxeles (GD1), o el tamaño en puntos (GD2).

angulo

El ángulo en grados, en donde 0 grados significa texto de lectura de izquierda-a-derecha. Valores más altos representan una rotación en sentido contrario al de las manecillas del reloj. Por ejemplo, un valor de 90 resulta en texto de lectura de abajo-hacia-arriba.

x

Las coordenadas dadas por x y y definirán el punto base del primer caracter (a grandes rasgos la esquina inferior izquierda del caracter). Esto a diferencia de imagestring(), en donde x y y definen la esquina superior izquierda del primer caracter. Por ejemplo, "arriba a la izquierda" es 0, 0.

y

La coordenada y. Ésta establece la posición de la línea base de las fuentes, no la parte más baja del caracter.

color

El índice de color. Usar un índice de color negativo tiene el efecto de deshabilitar el anti-alias. Vea imagecolorallocate().

archivo_fuente

La ruta a la fuente TrueType que desea usar.

Dependiendo de la versión de la biblioteca GD que usa PHP, cuando archivo_fuente no comienza con / entonces .ttf se añade al nombre de archivo y la biblioteca intentará buscar ese archivo a lo largo de una ruta de fuentes definida en la biblioteca.

Cuando se usan versiones de la biblioteca GD inferiores a 2.0.18, un caracter de espacio, en lugar de un punto-y-coma, era usado como el 'separador de ruta' para diferentes archivos de fuente. El uso no intencionado de esta característica resulta en el mensaje de advertencia: Warning: Could not find/open font. Para estas versiones afectadas, la única solución es mover la fuente a una ruta que no contenga espacios.

En muchos casos en los que una fuente reside en el mismo directorio que el script que la utiliza, el siguiente truco aliviará los problemas de inclusión.
<?php
// Definir la variable de entorno para GD
putenv('GDFONTPATH=' . realpath('.'));

// Nombre de la fuente a usar (note la falta de la extension .ttf)
$fuente = 'AlgunaFuente';
?>

texto

La cadena de texto.

Puede incluir referencias numéricas de caracter (de la forma: &#8364;) para acceder a caracteres en una fuente más allá de la posición 127. Es posible pasar cadenas en codificación UTF-8 directamente.

Si un caracter que no es soportado por la fuente es usado en la cadena, un rectángulo vacío reemplazará al caracter.

imagettftext() devuelve una matriz con 8 elementos que representan cuatro puntos que forman la caja circundante del texto. El orden de los puntos es inferior izquierdo, inferior derecho, superior derecho y superior izquierdo. Los puntos son relativos al texto independientemente del ángulo, así que "superior izquierdo" quiere decir la esquina del lado superior izquierdo cuando ve el texto horizontalmente.

Ejemplo 1. Ejemplo de imagettftext()

Este script de ejemplo producirá un PNG blanco de 400x30 pixeles, con las palabras "Probando..." en negro (con sombra gris), en la fuente Arial.

<?php
// Establecer el tipo de contenido
header("Content-type: image/png");

// Crear la imagen
$im = imagecreate(400, 30);

// Crear algunos colores
$blanco = imagecolorallocate($im, 255, 255, 255);
$gris   = imagecolorallocate($im, 128, 128, 128);
$negro  = imagecolorallocate($im, 0, 0, 0);

// El texto a pintar
$texto = 'Probando...';
// Reemplaze la ruta con su propio ruta a la fuente
$fuente = 'arial.ttf';

// Agregar una sombre al texto
imagettftext($im, 20, 0, 11, 21, $gris, $fuente, $texto);

// Agregar el texto
imagettftext($im, 20, 0, 10, 20, $negro, $fuente, $texto);

// Usar imagepng() resulta en texto mas claro, en comparacion con imagejpeg()
imagepng($im);
imagedestroy($im);
?>

Esta función requiere tanto la biblioteca GD como la biblioteca FreeType.

Vea también imagettfbbox().

Hosting by: hurra.com
Generated: 2007-01-26 18:00:44