php图像函数imagettftext用法

功能:imagettftext — 用 TrueType 字体向图像写入文本

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

参数:
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。对受影响的版本来说唯一解决方案就是将字体移动到不包含空格的路径中去。
很多情况下字体都放在脚本的同一个目录下。下面的小技巧可以减轻包含的问题。
 

PHP代码
  1. <?php  
  2. // Set the enviroment variable for GD  
  3. putenv('GDFONTPATH=' . realpath('.'));  
  4.   
  5. // Name the font to be used (note the lack of the .ttf extension)  
  6. $font = 'SomeFont';  
  7. ?>  

text
文本字符串。 可以包含十进制数字化字符表示(形式为:&#8364;)来访问字体中超过位置 127 的字符。UTF-8 编码的字符串可以直接传递。 如果字符串中使用的某个字符不被字体支持,一个空心矩形将替换该字符。
imagettftext() 返回一个含有 8 个单元的数组表示了文本外框的四个角,顺序为坐下角,右下角,右上角,左上角。这些点是相对于文本的而和角度无关,因此“左上角”指的是以水平方向看文字时其左上角。

示例:

PHP代码
  1. <?php  
  2. //本例中的脚本将生成一个白色的 400x30 像素 PNG 图像,其中有黑色(带灰色阴影)Arial 字体写的“Testing...”。  
  3. // Set the content-type  
  4. header("Content-type: image/png");  
  5.   
  6. // Create the image  
  7. $im = imagecreatetruecolor(400, 30);  
  8.   
  9. // Create some colors  
  10. $white = imagecolorallocate($im, 255, 255, 255);  
  11. $grey = imagecolorallocate($im, 128, 128, 128);  
  12. $black = imagecolorallocate($im, 0, 0, 0);  
  13. imagefilledrectangle($im, 0, 0, 399, 29, $white);  
  14.   
  15. // The text to draw  
  16. $text = 'Testing...';  
  17. // Replace path by your own font path  
  18. $font = 'arial.ttf';  
  19.   
  20. // Add some shadow to the text  
  21. imagettftext($im, 20, 0, 11, 21, $grey$font$text);  
  22.   
  23. // Add the text  
  24. imagettftext($im, 20, 0, 10, 20, $black$font$text);  
  25.   
  26. // Using imagepng() results in clearer text compared with imagejpeg()  
  27. imagepng($im);  
  28. imagedestroy($im);  
  29. ?>  

本函数同时需要 GD 库和 » FreeType 库。



上一篇: Godaddy国外空间asp发表文章时间不同步问题解决
下一篇: php随机中文字符串
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: php
相关日志:
评论: 0 | 引用: 0 | 查看次数: 2835
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭

 广告位

↑返回顶部↑