imagettfbbox
imagetypes
Fonctions GD et images
PHP Manual

# imagettftext

(PHP 4, PHP 5)

imagettftext — Dessine un texte avec une police TrueType

### Description

array imagettftext ( resource `$image` , float `$size` , float `$angle` , int `$x` , int `$y` , int `$color` , string `$fontfile` , string `$text` )

imagettftext() dessine le texte `text` avec la police TrueType `fontfile`.

### Liste de paramètres

`image`

  Une ressource d'image, retourné par une des fonctions de création d'images, comme imagecreatetruecolor().

`size`

  La taille de la police. En fonction de la version de votre bibliothèque GD, elle doit être spécifiée en pixels (GD1) ou en points (GD2).

`angle`

  L'angle, en degrés ; 0 degré correspond à la lecture du texte de gauche à droite. Les valeurs positives représentent une rotation dans le sens contraire des aiguilles d'une montre. Par exemple, une valeur de 90 correspondra à une lecture du texte de bas en haut.

`x`

  Les coordonnées données par `x` et `y` définiront la position du premier caractère (le coin bas-gauche du caractère). Cela est différent de la fonction imagestring(), où `x` et `y` définissent le coin haut-gauche du premier caractère. Par exemple, "haut gauche" correspond à 0, 0.

`y`

  L'ordonnée Y. Cela définit la position de la ligne de base de la police, et non pas le bas des caractères.

`color`

  L'index de la couleur. Utiliser un index de couleur négatif désactivera l'antialiasing. Voir la fonction imagecolorallocate().

`fontfile`

  Le chemin vers la police TrueType que vous souhaitez utiliser.

  Dépendant de la version de la bibliothèque GD utilisée par PHP, lorsque `fontfile` ne commence pas par un caractère / alors .ttf sera ajouté au nom du fichier et la bibliothèque recherchera ce nom de fichier dans les dossiers de police, définis par la bibliothèque.

  Lorsque vous utilisez une version de la bibliothèque GD inférieure à 2.0.18, un caractère espace, plutôt qu'un point-virgule, est utilisé pour définir des chemins alternatifs pour les fichiers de police. Si vous utilisez involontairement cette fonctionnalité, vous aurez ce message d'erreur : Warning: Could not find/open font. Pour ces versions affectées, la seule solution est de déplacée la police à un endroit qui ne contient pas d'espaces dans les noms de dossier.

  Dans le cas fréquent où une police réside dans le même dossier que le script l'utilisant, l'astuce suivante vous épargnera tous les problèmes.

  `<?php
  // Définition de la variable d'environnement pour GD
  putenv('GDFONTPATH=' . realpath('.'));
  // Nom de la police à utiliser (notez l'absence de l'extension .ttf)
  $font = 'SomeFont';
  ?>`
`text`

  La chaîne de texte, en UTF-8.

  Peut inclure des références à des caractères numériques, décimales (sous la forme : &#8364; ) pour accéder aux caractères d'une police au delà du premier 127. Les chaînes de caractères encodées en UTF-8 peuvent être passées directement.

  Les entités nommées, comme &copy;, ne sont pas supportées. Utilisez la fonction html_entity_decode() pour encoder ces entités nommées en chaîne UTF-8 (la fonction html_entity_decode() supporte ceci depuis PHP 5.0.0.).

  Si un caractère est utilisé dans une chaîne qui n'est pas supportée par la police, un rectangle creux remplacera le caractère.

### Valeurs de retour

Retourne un tableau de 8 éléments représentant quatre points marquants les limites du texte. L'ordre des points est : inférieur gauche, inférieur droit, supérieur droit, supérieur gauche. Les points sont relatifs au texte par rapport à l'angle, donc, "supérieur gauche" signifie dans le coin en haut à gauche lorsque vous regardez le texte horizontalement. Retourne `FALSE` si une erreur survient.

### Historique

Version | Description
--- | ---
5.2.0 | Il est maintenant possible de spécifier une entitée hexadécimal dans `text`.

### Exemples

Exemple #1 Exemple avec imagettftext()

Cet exemple produira une image PNG blanche de 400x30 pixels, avec le texte "Test..." en noir, avec une ombre grise, utilisant la police Arial.

`<?php
// Définition du content-type
header('Content-type: image/png');
// Création de l'image
$im = imagecreatetruecolor(400, 30);
// Création de quelques couleurs
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);
// Le texte à dessiner
$text = 'Test...';
// Remplacez le chemin par votre propre chemin de police
$font = 'arial.ttf';
// Ajout d'ombres au texte
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);
// Ajout du texte
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);
// Utiliser imagepng() donnera un texte plus claire,
// comparé à l'utilisation de la fonction imagejpeg()
imagepng($im);
imagedestroy($im);
?>`

L'exemple ci-dessus va afficher quelque chose de similaire à :

### Notes

> Note: Cette fonction requiert la bibliothèque GD ainsi que la bibliothèque » FreeType.

### Voir aussi

- imagettfbbox() - Retourne le rectangle entourant un texte et dessiné avec une police TrueType

imagettfbbox
imagetypes
Fonctions GD et images
PHP Manual