php GD 和图像处理函数, 用 STHUPO.TTF 字体向图像写入文本
注意:
01) imagettftext() 这个函数不能使用相对路径, 要想使用相对路径要先使用 putenv()
02) STHUPO.TTF 这个字体在当前目录下
1 // https://php.net/manual/zh/function.imagettftext.php 2 // https://php.net/manual/zh/function.imagettftext.php 3 4 // !!!为 imagettftext() 这函数使用相对路径做准备---------------------- 5 putenv('GDFONTPATH=' . realpath('.')); 6 7 //1. 绘制图像资源(创建一个画布) 8 $image = imagecreatetruecolor(500, 300); 9 //2. 先分配一个绿色 10 $green = imagecolorallocate($image, 22, 153, 0); 11 //3. 使用绿色填充画布 12 // imagefill($image, 0, 0, $green); 13 14 //4. 在画布中绘制图像 15 $bai = imagecolorallocate($image, 255, 255, 255); 16 //使用指定的字体文件绘制文字 17 //参数2:字体大小 18 //参数3:字体倾斜的角度 19 //参数4、5:文字的x、y坐标 20 //参数6:文字的颜色 21 //参数7:字体文件 22 //参数8:绘制的文字 23 //------- !!! -------------- imagettftext() 这个函数中的路径使用绝对路径,要想使用相对路径请注意 第一行代码 putenv() 24 imagettftext($image, 30, 30, 200, 250, $bai, './STHUPO.TTF', 'helloworld'); 25 // imagettftext($image, 30, 30, 200, 250, $bai, __DIR__.'/STHUPO.TTF', 'helloworld'); 26 // imagettftext($image, 30, 30, 200, 250, $bai, realpath('./').'/STHUPO.TTF', 'helloworld'); 27 // imagettftext($image, 30, 30, 200, 250, $bai, 'C:/Windows/Fonts/aparajbi.ttf', 'helloworld'); 28 // imagettftext($image, 30, 30, 200, 250, $bai, 'C:/Windows/Fonts/STHUPO.TTF', 'helloworld'); 29 30 //5. 在浏览器直接输出图像资源 31 header("Content-Type:image/jpeg"); 32 imagejpeg($image); 33 34 //6. 销毁图像资源 35 imagedestroy($image);
效果图如下: