imagefttext

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

imagefttextÉcrit du texte dans une image avec la police courante FreeType 2

Description

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

Note:

Antérieur à PHP 8.0.0, imagefttext() était une variante étendue de imagettftext() qui en plus supporte extrainfo. À partir de PHP 8.0.0, imagefttext() est un alias de imagefttext().

Liste de paramètres

image

Un objet GdImage, retournée par une des fonctions de création d'images, comme imagecreatetruecolor().

size

La taille de la police à utiliser, en nombre de points.

angle

L'angle, en degrés ; 0 degré pour une lecture du texte de gauche à droite. Les grandes valeurs représentent une rotation dans le sens des aiguilles d'une montre. Par exemple, une valeur de 90 aura pour effet de lire le texte du bas vers le haut.

x

Les coordonnées, fournies par x et y définissent le point de départ du premier caractère (et plus précisément, le coin en bas à gauche du caractère). C'est un comportement différent de la fonction imagestring(), où x et y définissent le coin en haut, à gauche du premier caractère. Par exemple, en haut à gauche vaut 0, 0.

y

L'ordonnée y-ordinate. Ce paramètre configure la position de base de la police, et non pas le bas de cette dernière.

color

L'index de la couleur désirée pour le texte, voir la fonction imagecolorexact().

font_filename

Le chemin vers la police TrueType à utiliser.

Suivant la version de GD utilisée par PHP, il sera recherché les fichiers qui ne commencent pas par un '/', en y ajoutant l'extension '.ttf', et suivant le chemin des polices défini par la bibliothèque.

Dans la plupart des cas, lorsque la police se trouve dans le même dossier que le script qui cherche à l'utiliser, la solution suivante permet de s'affranchir de tous les problèmes relatifs à l'inclusion.

<?php
// Définit la variable d'environnement pour GD
putenv('GDFONTPATH=' realpath('.'));

// Nom de la police à utiliser (note qu'il n'y a pas d'extension .ttf)
$font 'SomeFont';
?>

text

Le texte à insérer dans l'image.

options

Indexes possibles pour le tableau options
Clé Type Signification
linespacing float Définit l'espacement entre les lignes lors du dessin

Valeurs de retour

Cette fonction retourne un tableau définissant les 4 points d'une boîte, en commençant par le coin en bas, à gauche, puis, les suivants, dans le sens des aiguilles d'une montre :

0 x : coordonnée en bas, à gauche
1 y : coordonnée en bas, à gauche
2 x : coordonnée en bas, à droite
3 y : coordonnée en bas, à droite
4 x : coordonnée en haut, à droite
5 y : coordonnée en haut, à droite
6 x : coordonnée en haut, à gauche
7 y : coordonnée en haut, à gauche

En cas d'échec, false est retourné.

Historique

Version Description
8.0.0 image attend une instance de GdImage désormais; auparavant, une resource était attendu.

Exemples

Exemple #1 Exemple avec imagefttext()

<?php
// Création d'une image de 300x100 pixels
$im imagecreatetruecolor(300100);
$red imagecolorallocate($im0xFF0x000x00);
$black imagecolorallocate($im0x000x000x00);

// Définit l'arrière-plan en rouge
imagefilledrectangle($im0029999$red);

// Chemin vers notre fichier de police ttf
$font_file './arial.ttf';

// Dessine le texte 'PHP Manual' en utilisant une police de taille 13
imagefttext($im13010555$black$font_file'PHP Manual');

// Affichage de l'image sur le navigateur
header('Content-Type: image/png');

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

Notes

Note: Cette fonction n'est disponible que si si PHP est compilé avec le support Freetype (--with-freetype-dir=DIR)

Voir aussi

  • imageftbbox() - Calcule le rectangle d'encadrement pour un texte, en utilisant la police courante et freetype2
  • imagettftext() - Dessine un texte avec une police TrueType