imagefttext
(PHP 4 >= 4.0.7, PHP 5, PHP 7)
imagefttext — Écrit du texte dans une image avec la police courante FreeType 2
Description
$image
, float $size
, float $angle
, int $x
, int $y
, int $color
, string $fontfile
, string $text
[, array $extrainfo
] ) : arrayNote:
imagefttext() est une variante étendue de imagettftext() qui en plus supporte
extrainfo
.
Liste de paramètres
-
image
-
Une ressource d'image, 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
ety
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
ety
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().
-
fontfile
-
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.
Lors de l'utilisation d'une version de GD inférieure à 2.0.18, un caractère d'espacement (plutôt qu'un point-virgule) était utilisé comment séparateur dans le chemin pour les différents fichiers de police. Si vous utilisez toujours cette notation, vous obtiendrez le message d'erreur suivant : Warning: Could not find/open font. Pour ces anciennes versions, la seule solution est de déplacer la police dans un dossier qui ne contient pas d'espace.
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.
-
extrainfo
-
Indexes possibles pour le tableau extrainfo
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 |
Exemples
Exemple #1 Exemple avec imagefttext()
<?php
// Création d'une image de 300x100 pixels
$im = imagecreatetruecolor(300, 100);
$red = imagecolorallocate($im, 0xFF, 0x00, 0x00);
$black = imagecolorallocate($im, 0x00, 0x00, 0x00);
// Définit l'arrière-plan en rouge
imagefilledrectangle($im, 0, 0, 299, 99, $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($im, 13, 0, 105, 55, $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
Version en cache
25/11/2024 19:25:34 Cette version de la page est en cache (à la date du 25/11/2024 19:25:34) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-imagefttext.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.