函数介绍:
array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )
—-使用 TrueType 字体将 指定的 text 写入图像。 (注意:字体必须是TrueType 字体)
用 TrueType 字体向图像写入文本
参数
image
-
由图象创建函数(例如imagecreatetruecolor())返回的图象资源。
size
-
字体的尺寸。根据 GD 的版本,为像素尺寸(GD1)或点(磅)尺寸(GD2)。
angle
-
角度制表示的角度,0 度为从左向右读的文本。更高数值表示逆时针旋转。例如 90 度表示从下向上读的文本。
x
-
由
x
,y
所表示的坐标定义了第一个字符的基本点(大概是字符的左下角)。这和 imagestring() 不同,其x
,y
定义了第一个字符的左上角。例如 “top left” 为 0, 0。 y
-
Y 坐标。它设定了字体基线的位置,不是字符的最底端。
color
-
颜色索引。使用负的颜色索引值具有关闭防锯齿的效果。见 imagecolorallocate()。
fontfile
-
是想要使用的 TrueType 字体的路径。
根据 PHP 所使用的 GD 库的不同,当
fontfile
没有以 / 开头时则 .ttf 将被加到文件名之后并且会在库定义字体路径中尝试搜索该文件名。当使用的 GD 库版本低于 2.0.18 时,一个空格字符 而不是分号将被用来作为不同字体文件的”路径分隔符”。不小心使用了此特性将会导致一条警告信息:Warning: Could not find/open font。对受影响的版本来说唯一解决方案就是将字体移动到不包含空格的路径中去。
下面是一个例子:
123456789101112131415161718192021<?php//图片路径,此图片做为画布生成$imagepath='./file/tb_about.jpg';//以给定的图片生成画布$canvas=imagecreatefromjpeg($imagepath);//创建颜色$blue=imagecolorallocate($canvas,0,0,255);//主要函数,在图片上生成文字//array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )imagettftext($canvas,14,30,100,100,$blue,'./font/Yahei.ttf','这个是中文');//把生成的图片输出到浏览器上ob_clean();header('Content-Type:image/jpeg');imagejpeg($canvas);//销毁画布资源imagedestroy($canvas);?>