imageftbbox

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

imageftbboxCalcule le rectangle d'encadrement pour un texte, en utilisant la police courante et freetype2

Description

imageftbbox ( float $size , float $angle , string $fontfile , string $text [, array $extrainfo ] ) : array

imageftbbox() calcule le rectangle d'encadrement pour le texte text, en utilisant la police courante et freetype2.

Note:

imageftbbox() est une variante étendue de imagettfbbox() qui en plus supporte extrainfo.

Liste de paramètres

size

La taille de la police de caractères en point.

angle

Angle, en degrés, dans lequel le paramètre text sera mesuré.

fontfile

Le nom du fichier de la police TrueType (peut être une URL). 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.

text

La chaîne à mesurer.

extrainfo

Index possibles pour le tableau extrainfo
Clé Type Signification
linespacing float Représente l'espacement entre les lignes lors du dessin

Valeurs de retour

imageftbbox() retourne un tableau contenant 8 éléments représentant les 4 points du rectangle entourant le texte :

0 Coin en bas, à gauche, position en X
1 Coin en bas, à gauche, position en Y
2 Coin en bas, à droite, position en X
3 Coin en bas, à droite, position en Y
4 Coin en haut, à droite, position en X
5 Coin en haut, à droite, position en Y
6 Coin en haut, à gauche, position en X
7 Coin en haut, à gauche, position en Y

Les points sont relatifs au texte suivant le paramètre angle, aussi, "en haut à gauche" signifie le coin en haut à gauche lorsque l'on regarde le texte horizontalement.

Exemples

Exemple #1 Exemple avec imageftbbox()

<?php
// Création d'une image de 300x150 pixels
$im imagecreatetruecolor(300150);
$black imagecolorallocate($im000);
$white imagecolorallocate($im255255255);

// Définit l'arrière-plan en blanc
imagefilledrectangle($im00299299$white);

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

// D'abord, nous créons un rectangle contenant notre texte
$bbox imageftbbox(100$font'The PHP Documentation Group');

// Nos coordonnées en X et en Y
$x $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 5;
$y $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5;

imagefttext($im100$x$y$black$font'The PHP Documentation Group');

// Affichage vers 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

  • imagefttext() - Écrit du texte dans une image avec la police courante FreeType 2
  • imagettfbbox() - Retourne le rectangle entourant un texte et dessiné avec une police TrueType