array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'es', ), 'this' => array ( 0 => 'function.imageloadfont.php', 1 => 'imageloadfont', ), 'up' => array ( 0 => 'ref.image.php', 1 => 'Funciones de GD e Imágenes', ), 'prev' => array ( 0 => 'function.imageline.php', 1 => 'imageline', ), 'next' => array ( 0 => 'function.imageopenpolygon.php', 1 => 'imageopenpolygon', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'es', 'path' => 'reference/image/functions/imageloadfont.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
imageloadfont — Cargar una nueva fuente
imageloadfont() carga un mapa de bits definido por el usuario y devuelve su identificador.
file
El formato del archivo de fuente actualmente es binario y dependiente de la arquitectura. Esto significa que debería generar los archivos de fuente en el mismo tipo de CPU de la máquina donde se está ejecutando PHP.
posición de byte | tipo | descripción |
---|---|---|
byte 0-3 | int | número de caracteres en la fuente |
byte 4-7 | int | valor del primer carácter de la fuente (a menudo 32 para el espacio) |
byte 8-11 | int | ancho de píxel de cada carácter |
byte 12-15 | int | alto de píxel de cada carácter |
byte 16- | char | matriz con la información de los caracteres, un byte por píxel en cada carácter, para un total de (ncars*ancho*alto) bytes. |
El identificador de fuente que es siempre mayor que 5 para evitar conflictos con
fuentes incluidas, o false
si se produjeron errores.
Ejemplo #1 Ejemplo de uso de imageloadfont()
<?php
// Crear una nueva instancia de imagen
$im = imagecreatetruecolor(50, 20);
$negro = imagecolorallocate($im, 0, 0, 0);
$blanco = imagecolorallocate($im, 255, 255, 255);
// Hacer el fondo blanco
imagefilledrectangle($im, 0, 0, 49, 19, $blanco);
// Cargar la fuente gd y escribir 'Hola'
$fuente = imageloadfont('./04b.gdf');
imagestring($im, $fuente, 0, 0, 'Hola', $negro);
// Imprimir al navegador
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>