(PHP 4 >= 4.0.7, PHP 5, PHP 7, PHP 8)
imagefttext — Write text to the image using fonts using FreeType 2
$image
,$size
,$angle
,$x
,$y
,$color
,$font_filename
,$text
,$options
= []Note:
Prior to PHP 8.0.0, imagefttext() was an extended variant of imagettftext() which additionally supported the
options
. As of PHP 8.0.0, imagettftext() is an alias of imagefttext().
image
A GdImage object, returned by one of the image creation functions, such as imagecreatetruecolor().
size
The font size to use in points.
angle
The angle in degrees, with 0 degrees being left-to-right reading text. Higher values represent a counter-clockwise rotation. For example, a value of 90 would result in bottom-to-top reading text.
x
The coordinates given by x
and
y
will define the basepoint of the first
character (roughly the lower-left corner of the character). This
is different from the imagestring(), where
x
and y
define the
upper-left corner of the first character. For example, "top left"
is 0, 0.
y
The y-ordinate. This sets the position of the fonts baseline, not the very bottom of the character.
color
The index of the desired color for the text, see imagecolorexact().
font_filename
The path to the TrueType font you wish to use.
Depending on which version of the GD library PHP is using, when
font_filename
does not begin with a leading
/
then .ttf
will be appended
to the filename and the library will attempt to search for that
filename along a library-defined font path.
In many cases where a font resides in the same directory as the script using it the following trick will alleviate any include problems.
<?php
// Set the environment variable for GD
putenv('GDFONTPATH=' . realpath('.'));
// Name the font to be used (note the lack of the .ttf extension)
$font = 'SomeFont';
?>
text
Text to be inserted into image.
options
Key | Type | Meaning |
---|---|---|
linespacing |
float | Defines drawing linespacing |
This function returns an array defining the four points of the box, starting in the lower left and moving counter-clockwise:
0 | lower left x-coordinate |
1 | lower left y-coordinate |
2 | lower right x-coordinate |
3 | lower right y-coordinate |
4 | upper right x-coordinate |
5 | upper right y-coordinate |
6 | upper left x-coordinate |
7 | upper left y-coordinate |
On failure, false
is returned.
Version | Description |
---|---|
8.0.0 |
image expects a GdImage
instance now; previously, a resource was expected.
|
Example #1 imagefttext() example
<?php
// Create a 300x100 image
$im = imagecreatetruecolor(300, 100);
$red = imagecolorallocate($im, 0xFF, 0x00, 0x00);
$black = imagecolorallocate($im, 0x00, 0x00, 0x00);
// Make the background red
imagefilledrectangle($im, 0, 0, 299, 99, $red);
// Path to our ttf font file
$font_file = './arial.ttf';
// Draw the text 'PHP Manual' using font size 13
imagefttext($im, 13, 0, 105, 55, $black, $font_file, 'PHP Manual');
// Output image to the browser
header('Content-Type: image/png');
imagepng($im);
imagedestroy($im);
?>
Note: This function is only available if PHP is compiled with freetype support (--with-freetype-dir=DIR)