array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'pt_BR', ), 'this' => array ( 0 => 'function.imageftbbox.php', 1 => 'imageftbbox', ), 'up' => array ( 0 => 'ref.image.php', 1 => 'Funções de GD e Image', ), 'prev' => array ( 0 => 'function.imagefontwidth.php', 1 => 'imagefontwidth', ), 'next' => array ( 0 => 'function.imagefttext.php', 1 => 'imagefttext', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'pt_BR', 'path' => 'reference/image/functions/imageftbbox.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4 >= 4.0.7, PHP 5, PHP 7, PHP 8)
imageftbbox — Fornece a caixa limite de um texto usando fontes via freetype2
$size
,$angle
,$font_filename
,$string
,$options
= []Esta função calcula e retorna a caixa limite em pixels para um texto em FreeType.
Nota:
Antes do PHP 8.0.0, imageftbbox() era uma variante estendida de imagettfbbox() que suportava adicionalmente o parâmetro
options
. A partir do PHP 8.0.0, imagettfbbox() é um apelido de imageftbbox().
size
O tamanho da fonte em pontos.
angle
Ângulo em graus no qual a string
será
medida.
font_filename
O nome do arquivo da fonte TrueType (pode ser uma URL). Dependendo de qual versão da biblioteca GD que o PHP estiver usando, pode ser que ele tente pesquisar por arquivos que não iniciem com uma barra '/', anexando a extensão '.ttf' ao nome do arquivo e pesquisando ao longo de um caminho de fonte definido pela biblioteca.
string
A string a ser medida.
options
Chave | Tipo | Significado |
---|---|---|
linespacing |
float | Define o espaçamento entre linhas |
imageftbbox() retorna um array com 8 elementos representando os quatro pontos que definem os limites do texto:
0 | canto inferior esquerdo, posição X |
1 | canto inferior esquerdo, posição Y |
2 | canto inferior direito, posição X |
3 | canto inferior direito, posição Y |
4 | canto superior direito, posição X |
5 | canto superior direito, posição Y |
6 | canto superior esquerdo, posição X |
7 | canto superior esquerdo, posição Y |
Os pontos são relativos ao texto independente do parâmetro
angle
, portanto "superior esquerdo" significa no canto da parte superior esquerda
vendo o texto horizontalmente.
Em caso de falha, false
é retornado.
Exemplo #1 Exemplo de imageftbbox()
<?php
// Cria uma imagem 300x150
$im = imagecreatetruecolor(300, 150);
$black = imagecolorallocate($im, 0, 0, 0);
$white = imagecolorallocate($im, 255, 255, 255);
// Define o fundo para branco
imagefilledrectangle($im, 0, 0, 299, 299, $white);
// Caminho para o arquivo da fonte
$font = './arial.ttf';
// Primeiramente cria-se a caixa limite
$bbox = imageftbbox(10, 0, $font, 'The PHP Documentation Group');
// Estas são as 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, $black, $font, 'The PHP Documentation Group');
// Mostra no navegador
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
?>
Nota: Esta função só estará disponível se o PHP for compilado com suporte ao freetype (--with-freetype-dir=DIR).