🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
1、获取文字尺寸属性:imagettftext($image, $size, $angle, $x, $y, $color, $fontfile, $text)。 $img = imagecreatetruecolor(300, 300); imagefill($img, 0, 0, imagecolorallocate($img, 123, 213, 321)); $c = imagettftext($img, 14, 0, 10, 40, imagecolorallocate($img, 255, 255, 255), 'font/msyh.ttc', iconv("gbk", "utf-8", 'fxxyhttp://www.baidu.com')); echo '<pre>'; print_r($c); echo '这几个字的尺寸是:<br/>'; echo '宽:'.($c[2]-$c[6]).'<br/>'; echo '高:'.($c[3]-$c[7]); 2、图像旋转: imagerotate($image, $angle, $bgd_color)。 $img = imagecreatefromjpeg('test.jpg'); $rotate = imagerotate($img, 90, 0); header('Content-type:image/jpeg'); imagejpeg($rotate); 3、图像整合,并且设置水印透明度:imagecopymerge($dst_im, $src_im, $dst_x, $dst_y, $src_x, $src_y, $src_w, $src_h, $pct)。 参数解释:将 src_im 图像中坐标从 src_x,src_y 开始,宽度为 src_w,高度为 src_h 的一部分拷贝到 dst_im 图像中坐标为 dst_x 和 dst_y 的位置上。 $img = imagecreatetruecolor(400, 400); imagefill($img, 0, 0, imagecolorallocate($img, 255, 0, 0)); $jpeg = imagecreatefromjpeg('test.jpg'); //imagecopy($img, $jpeg, (imagesx($img)-imagesx($jpeg))/2, (imagesy($img)-imagesy($jpeg))/2, 0, 0, imagesx($jpeg), imagesy($jpeg)); imagecopymerge($img, $jpeg, (imagesx($img)-imagesx($jpeg))/2, (imagesy($img)-imagesy($jpeg))/2, 0, 0, imagesx($jpeg), imagesy($jpeg),30); header('Content-type:image/jpeg'); imagejpeg($img);