imagettfbbox
(PHP 4, PHP 5)
imagettfbbox — Retourne le rectangle entourant un texte et dessiné avec une police TrueType
Description
$size
, float $angle
, string $fontfile
, string $text
)
Calcule et retourne le rectangle entourant le texte
text
, écrit avec une police truetype.
Liste de paramètres
-
size
-
La taille de la police.
Note: En GD 1, la taille est mesurée en pixels. En GD 2, elle est mesurée en points.
-
angle
-
L'angle, en degrés, dans lequel le paramètre
text
sera mesuré. -
fontfile
-
Le nom de la police TrueType (peut être une URL). Suivant la version de la bibliothèque GD utilisée par PHP, ce paramètre peut chercher des fichiers qui ne commence pas par un slash ("/") de fin mais plutôt .ttf et cherchera tout le long des chemins de fonts définis.
-
text
-
La chaîne à mesurer.
Valeurs de retour
imagettfbbox() retourne un tableau avec 8
éléments représentant les 4 sommets du rectangle
en cas de succès, FALSE
si une erreur survient.
Clé | Signification |
---|---|
0 | Coin inférieur gauche, abscisse |
1 | Coin inférieur gauche, ordonnée |
2 | Coin inférieur droit, abscisse |
3 | Coin inférieur droit, ordonnée |
4 | Coin supérieur droit, abscisse |
5 | Coin supérieur droit, ordonnée |
6 | Coin supérieur gauche, abscisse |
7 | Coin supérieur gauche, ordonnée |
Les positions des points sont relatives au texte text, indépendamment de l'angle : coin supérieur gauche faire référence au coin supérieur gauche du texte écrit horizontalement.
Exemples
Exemple #1 Exemple avec imagettfbbox()
<?php // Création d'une image de 300x150 pixels $im = imagecreatetruecolor(300, 150); $black = imagecolorallocate($im, 0, 0, 0); $white = imagecolorallocate($im, 255, 255, 255); // Définit l'arrière-plan en blanc imagefilledrectangle($im, 0, 0, 299, 299, $white); // Chemin vers le fichier de police $font = './arial.ttf'; // Tout d'abord, nous créons notre rectangle entourant notre premier texte $bbox = imagettfbbox(10, 45, $font, 'Powered by PHP ' . phpversion()); // Nos coordonnées en X et en Y $x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 25; $y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5; // Dessin du texte imagettftext($im, 10, 45, $x, $y, $black, $font, 'Powered by PHP ' . phpversion()); // Nous créons notre rectangle entourant notre second texte $bbox = imagettfbbox(10, 45, $font, 'and Zend Engine ' . zend_version()); // Définit les coordonnées afin que le second text suive le premier $x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) + 10; $y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5; // Dessin du texte imagettftext($im, 10, 45, $x, $y, $black, $font, 'and Zend Engine ' . zend_version()); // Affichage vers le navigateur header('Content-Type: image/png'); imagepng($im); imagedestroy($im); ?>
Notes
Note:
Cette fonction nécessite la bibliothèque GD et la bibliothèque » FreeType.