PHP在图片上添加文字

PHP在图片上添加文字的方法如下:

  //向不同格式的图片中间画一个字符串(也是文字水印)
    private function image($filename,$string){
        //获取图片的属性,第一个宽度,第二个高度,类型1=>gif,2=>jpeg,3=>png
        list($width,$height,$type) = getimagesize($filename);
        //可以处理的图片类型
        $types = array(1=>"gif",2=>"jpeg",3=>"png",);
        //通过图片类型去组合,可以创建对应图片格式的,创建图片资源的GD库函数
        $createfrom = "imagecreatefrom".$types[$type];
        //通过“变量函数”去打对应的函数去创建图片的资源
        $image = $createfrom($filename);
        //设置居中字体的X轴坐标位置
        $x = ($width-imagefontwidth(5)*strlen($string))/2;
        //设置居中字体的Y轴坐标位置
        $y = ($height-imagefontheight(5))/1.18;
        //设置字体的颜色为红色
        $textcolor = imagecolorallocate($image, 255, 0, 0);
        //向图片画一个指定的字符串
//        imagestring($image, 5, $x, $y, $string, $textcolor);

        $font = "./Fonts/ACaslonPro-Bold.otf"; //字体在服务器上的绝对路径

        imagefttext($image, 105, 0, $x, $y, $textcolor, $font, $string);
        //通过图片类型去组合保存对应格式的图片函数
        $output = "image".$types[$type];
        //通过变量函数去保存对应格式的图片
        $output($image,$filename);
        imagedestroy($image);
    }

本文参考的文章:

PHP图片处理之图片背景、画布操作

每一次的结束都意味着新的开始
原文地址:https://www.cnblogs.com/ccdv/p/14544512.html