imagefttext

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

imagefttextEscreve texto em uma imagem usando fontes FreeType 2

Descrição

imagefttext(
    GdImage$image,
    float$size,
    float$angle,
    int$x,
    int$y,
    int$color,
    string$font_filename,
    string$text,
    array$options = []
): array|false

Nota:

Antes do PHP 8.0.0, imagefttext() era uma variante estendida de imagettftext() que suportava adicionalmente o parâmetro options. A partir do PHP 8.0.0, imagettftext() é um apelido de imagefttext().

Parâmetros

image

Um objeto GdImage, retornado por uma das funções de criação de imagem, como imagecreatetruecolor().

size

O tamanho da fonte a ser usado, em pontos.

angle

O ângulo em graus, com 0 grau sendo a leitura da esquerda para a direita. Valores maiores representam a rotação no sentido anti-horário. Por exemplo, um valor de 90 resultaria em uma leitura de baixo para cima.

x

As coordenadas dadas por x e y definirão o ponto base do primeiro caractere (aproximadamente o canto inferior esquerdo do caractere. Isto é diferente de imagestring(), onde x e y definem o canto superior esquerdo do primeiro caractere. Por exemplo, "superior esquerdo" é 0, 0.

y

A ordenada y. Isto define a posição da linha de base da fonte, e não a parte mais baixa do caractere.

color

O índice da cor desejada para o texto, veja imagecolorexact().

font_filename

O caminho para a fonte TrueType a ser usada.

Dependendo de qual versão da biblioteca GD que o PHP estiver usando, quando font_filename não iniciar com uma barra /. a extensão .ttf será anexada ao nome do arquivo e a biblioteca tentará pesquisar por este arquivo ao longo do caminho definido pela biblioteca.

Em muitos casos onde uma fonte reside no mesmo diretório que o script que está sendo executado, o truque a seguir aliviará problemas ao incluir arquivos.

<?php
//Define a variável de ambiente para GD
putenv('GDFONTPATH=' . realpath('.'));

// Nomeia a fonte a ser usada (note a falta da extensão .ttf)
$font = 'SomeFont';
?>
text

Texto a ser inserido na imagem.

options

Índices de array possíveis para options
ChaveTipoSignificado
linespacingfloatDefine espaçamento entre linhas

Valor Retornado

Esta função retorna um array com os quatro pontos que definem os limites do texto, iniciando no canto inferior esquerdo e seguindo no sentido anti-horário:

0canto inferior esquerdo, posição X
1canto inferior esquerdo, posição Y
2canto inferior direito, posição X
3canto inferior direito, posição Y
4canto superior direito, posição X
5canto superior direito, posição Y
6canto superior esquerdo, posição X
7canto superior esquerdo, posição Y

Em caso de falha, false é retornado.

Registro de Alterações

VersãoDescrição
8.0.0 O parâmetro image agora espera uma instância de GdImage; anteriormente, um resourcegd válido era esperado.

Exemplos

Exemplo #1 Exemplo de imagefttext()

<?php
// Cria uma imagem 300x100
$im = imagecreatetruecolor(300, 100);
$red = imagecolorallocate($im, 0xFF, 0x00, 0x00);
$black = imagecolorallocate($im, 0x00, 0x00, 0x00);

// Deixa o fundo vermelho
imagefilledrectangle($im, 0, 0, 299, 99, $red);

// Caminho para o arquivo de fonte ttf
$font_file = './arial.ttf';

// Desenha o texto 'PHP Manual' usando fonte tamanho 13
imagefttext($im, 13, 0, 105, 55, $black, $font_file, 'PHP Manual');

// Mostr a imagem no navegador
header('Content-Type: image/png');

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

Notas

Nota: Esta função só estará disponível se o PHP for compilado com suporte ao freetype (--with-freetype-dir=DIR).

Veja Também

  • imageftbbox() - Fornece a caixa limite de um texto usando fontes via freetype2
  • imagettftext() - Escreve texto na imagem usando fontes TrueType
To Top