需求:给图片指定位置加水印文字。
一开始使用的是 imgstring,结果发现很有局限性,比如字体大小选择只有(1,2,3,4,5)这几个选项,字体不大;最关键是无法输出中文,中文会乱码。函数原型如下:
bool imagestring ( resource $image , int $font , int $x , int $y , string $string , int $color )
接下来使用的是 imagettftext,这个可以输出中文了,有个必须参数是要真实存在的字体文件,于是先下载个字体文件,我是在中华字体网下的,点击打开链接,下面是函数原型:
array imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )
demo 代码和效果如下:
//1.配置图片路径
$src = "1.jpg";
//2.获取图片信息
$info = getimagesize($src);
//3.通过编号获取图像类型
$type = image_type_to_extension($info[2],false);
//4.在内存中创建和图像类型一样的图像