(PHP 4 >= 4.0.7, PHP 5, PHP 7)
imageftbbox — Devolver la caja circundante de un texto usando fuentes mediante FreeType 2
$size
, float $angle
, string $fontfile
, string $text
[, array $extrainfo
] ) : arrayEsta función calcula y devuelve la caja circundante en píxeles de un texto FreeType.
size
Tamaño de fuente en puntos.
angle
Ángulo en grados en el que text
será
medido.
fontfile
El nombre de un archivo de fuente TrueType (puede ser una URL). Dependiendo de la versión de la biblioteca GD que esté usando PHP, se intentará buscar archivos que no comiencen con '/' añadiendo '.ttf' al nombre de archivo y buscando en una ruta de biblioteca definida de fuentes.
text
La cadena que va a ser medida.
extrainfo
Clave | Tipo | Significado |
---|---|---|
linespacing | float | Define el espacio entre líneas |
imageftbbox() devuelve una matriz con 8 elementos que representan cuatro puntos que hacen la caja circundante del texto:
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 |
Los puntos son relativos a text sin importar el ángulo
angle
, por lo que "superior izquierda" significa la esquina superior
izquierda, viendo el texto horizontalmente.
Ejemplo #1 Ejemplo de imageftbbox()
<?php
// Crear una imagen de 300x150
$im = imagecreatetruecolor(300, 150);
$negro = imagecolorallocate($im, 0, 0, 0);
$blanco = imagecolorallocate($im, 255, 255, 255);
// Establecer el fondo a blanco
imagefilledrectangle($im, 0, 0, 299, 299, $blanco);
// Ruta de nuestro archivo de fuente
$fuente = './arial.ttf';
// Priemero creamos nuestra caja circundante
$bbox = imageftbbox(10, 0, $fuente, 'The PHP Documentation Group');
// Estas son nuestras coordenadas para X e Y
$x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 5;
$y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5;
imagefttext($im, 10, 0, $x, $y, $negro, $fuente, 'The PHP Documentation Group');
// Imprimir al navegador
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
?>
Nota: Esta función sólo está disponible si PHP fue compilado con suporte de freetype (--with-freetype-dir=DIR)