在图像显示的文本也需要根据坐标位置绘制。在PHP中,它不仅支持很多种字体库,但也提供了一个非常灵活的方式来绘制文本。例如,画缩放,倾斜和旋转文字,图中你可以通过功能。作为imagestring使用字体的文本(),imagestringup(),或imagechar()的形象。这些函数的原型如下:

复制代码代码如下所示:

布尔imagestring(资源为图像,int int x美元,美元的字体,int Y元,字符串S,int $色)画一个字符串/水平

布尔imagestringup(资源为图像,int int x美元,美元的字体,int Y元,字符串S,int美元颜色)画一条垂直线串 / /

Bool imagechar(资源为图像,int int x美元,美元的字体,int Y元,字符$ C,int $色)画一个人物/水平

Bool imagecharup(资源为图像,int int x美元,美元的字体,int Y元,字符$ C,int $颜色) / /垂直画一个字符



四功能在上面列出,前两(imagestring)和imagestringup(功能)用于水平和垂直字符串输出的图像,然后两imagechar()和imagecharup(功能)用于水平和垂直方向的字符输出图像。虽然四功能不同,调用类似他们都画人物的形象第五美元的参数指定,所有这一切都是从X元画(Y元)。如果一个字符串水平地从左到右拉,一串串垂直图是从底部输出,这些功能可以通过最后一个参数给文字的颜色,颜色美元二参数,$字体,给字体标识符,其值为整数文1, 2, 3、4或5,并使用内置的字体。数字越大,输出的文本大小越大。下面是图像中文本输出的示例:

复制代码代码如下所示:

< PHP

$我=画面欣赏(150, 150);



BG = imagecolorallocate美元(合我,255, 255, 255); / /设置画布的白色背景

黑imagecolorallocate美元(合我,0, 0, 0); / /套可变颜色黑色



为字符串=lampbrother ; / /在字符图像输出



imagestring(合我,3, 28, 70,为字符串,$黑色); / /产出水平的形象在字符串

imagestringup(合我,3, 59, 115,为字符串,$黑色); / /垂直传播的自底向上的图像

为($我= 0,J = strlen($字符串);$我< strlen($字符串);$我+ +,$ J—){ / /周期输出图像到一个单一的特点

imagechar($ IM,3, 10 *($我+ 1),10×(J + 2),为字符串{ $我},为黑色); / /下输出每个字符

Imagecharup($ IM,3, 10 *($我+ 1),10×(J + 2),为字符串{ $我},为黑色); / /字符每个倾斜输出

}



头('content-type:图像/格式);

imagepng(为我);

>





通过以上介绍的四种功能,输出的内置字体,你也可以使用imagettftext()函数来输出一个可伸缩的TrueType字体,是独立的device.truetype使用数学函数来描述,是字体的轮廓,它可以用来打印字体,也可用于屏幕显示。各种操作系统都可以用这种字体兼容。由于它是由指令字体的描述,它是独立的分辨率和输出总是输出根据打印机的分辨率。无论放大或缩小,字体总是光滑无锯齿出现。例如,在Windows系统文件夹下的C: Windows 字体字库,有TrueType字体标签,如simsun.ttf是TrueType字体宋体,imagettftext()函数的原型如下所示:

复制代码代码如下所示:

阵列(资源imagettftext美元浮动图像,美元浮动美元大小,角度,int x美元,int Y元)。



函数需要多个参数,其中参数$映像需要提供一个图像资源。根据GD库的版本,大小(GD1)或点的大小(GD2)应与像素大小的规定。为参数角的角度表示,0ordm角度;从左到右读课文,高值表示逆时针旋转。例如,90ordm;文字从下往上,由两个参数的坐标表示(X,Y元),一个字符的基本点的定义,可能是左下角的特征,这是由不同的imagestring()函数,它的(X元,$ Y)坐标定义的第一个字符的左上角为参数的颜色指定颜色索引,索引值的使用具有消极色彩的CLO的影响唱反走样。看到专业的美元为你想使用TrueType字体的路径。根据使用PHP的GD库的差异,当fontfil不下手,。TTF将被添加到该文件的名称,它将尝试在由标准库定义的字体路径文件名搜索,最后一个参数为指定的文本字符串的文本输出。它可以包含十进制数字字符表示(形式:# 8364)访问超过127字体中的字符的UTF-8编码的字符串可以直接传递。如果用在一个字符串是不是由一个字体支持,中空的矩形将取代字符。

的imagettftext()函数返回一个数组包含8个单元,这是该文件的外部框架的四角,与左下角,右下角、右上角和左上角。这些点相对于文本无关的角度,所以左上角是指文本的左上角,当你看在水瓶方向的文本。通过脚本在下一个例子中,我们生成了一个白色的400x30像素PNG图片,其中有一个黑色(灰色阴影)宋体写回忆经典的代码所示。如下:

复制代码代码如下所示:

< PHP

$我=新建一个真彩色图像(400, 30); / /创建一个40030像素大小的画布



白色= imagecolorallocate美元(合我,255, 255, 255);

灰色= imagecolorallocate美元(合我,128, 128, 128);

黑imagecolorallocate美元(合我,0, 0, 0);



Imagefilledrectangle(0, 0, 399美元,29美元是白色); / /输出使用白色背景填充矩形



如果有中国 /输出,需要转换为UTF-8编码的字符串,可以直接转移

为文本= iconv(GB2312



/ /设置字体、系统和相应的simsun.ttc字体复制到当前目录

美元= 'simsun TTC的字体;



imagettftext(合我,20, 0, 12,21,美元美元美元的灰色,字体,文字); / /输出字符串作为一个灰色的影子

imagettftext(合我,20, 0, 10,20,美元美元美元黑色字体,文本); / /输出字符串在一个黑色的影子



页眉(内容类型:图像);

imagepng(为我);



销毁一图像(为我);



>