转载:PHP 给图片添加文字水印
1 $ori_img = "images/13801220684507.jpg"; //原图 2 $new_img = "images/daixiaorui.jpg"; //生成水印后的图片 3 4 $original = getimagesize($ori_img); //得到图片的信息,可以print_r($original)发现它就是一个数组 5 $s_original = imgCreateFrom($ori_img, $original[2]); //$original[2]是图片类型,其中1表示gif、2表示jpg、3表示png 6 7 $posX = 90; //X坐标 8 $poxY = 330; //Y坐标 9 $font_size = 22; //字号 10 $tilt = 8; //文字的倾斜度 11 $color = imagecolorallocate($s_original,255,0,0);// 为一幅图像分配颜色 255,0,0表示红色 12 $str = "欢迎访问:http://www.daixiaorui.com"; 13 14 imagettftext($s_original, $font_size, $tilt, $posX, $poxY, $color, 'C:/Windows/Fonts/simfang.ttf', $str); 15 //打水印八个参数缺一不可: 16 画布 17 矢量字体大小(磅,类似像素) 18 旋转角度 19 X基线点(像素) 20 Y基线点(像素) 21 颜色 22 字体文件 23 需要渲染的字符串 24 //向浏览器输出图片 注释掉 25 //header("Content-type:image/jpeg"); 26 //imagejpeg($s_original); 27 28 $loop = imagejpeg($s_original, $new_img); //生成新的图片(jpg格式),如果用imagepng可以生成png格式 29 if($loop) echo "水印添加成功!"; 30 31 //根据文件类型 创建一个新图象 32 function imgCreateFrom($img_src, $val){ 33 switch($val){ 34 case 1 : $img = imagecreatefromgif($img_src); 35 break; 36 case 2 : $img = imagecreatefromjpeg($img_src); 37 break; 38 case 3 : $img = imagecreatefrompng($img_src); 39 break; 40 } 41 return $img; 42 }
fkp