給圖片加水印是很多網站會做的事情,下面這段代碼只支持給圖片加上文字水印,現在暫時只支持英文的,如果要讓此程序能支持中文漢字就把$font=///'verdana.ttf///';調用一個中文字體就OK了,實例代碼如下:
- $image=$_get[id];
- $im=getimagesize($image);
- //print_r($im);
- //以下是讀取文字的寬高
- $font='verdana.ttf';//字體
- $font_size = $im[0]/20;//文字大小
- $size=imagettfbbox($font_size,0,$font,'Vevb.com');//文字寬高
- $textwidth = $size [4];//取出寬
- $textheight = abs( $size [7] );//取出高
- $pic_w=abs(($im[0]-$textwidth)/2);//文字存放寬的位置
- $pic_h=abs(($im[1]-$textheight)/2);//文字存放高的位置
- switch($im[2])
- {
- case 1:
- $im=imagecreatefromgif($image);
- break;
- case 2:
- $im=imagecreatefromjpeg($image);
- break;
- case 3:
- $im=imagecreatefrompng($image);
- break;
- }
- //$logo="2.png";//商標圖片
- //$ing=getimagesize($logo);
- //
- // switch($ing[2])
- //
- //{
- //case 1:
- //$in=imagecreatefromgif($logo);
- //break;
- //
- //case 2:
- //$in=imagecreatefromjpeg($logo);
- //break;
- //
- //case 3:
- //$in=imagecreatefrompng($logo);
- //break;
- //}
- //imagecopy($im,$in,200,3,0,0,'120','110');//圖片合并
- $te = imagecolorclosestalpha($im,255,255,255,60);//最后一個數值是透明度越大越透明
- $str=iconv("gbk","utf-8","Vevb.com"); //設置文字的內容和編碼,很簡單吧
- imagettftext($im,$font_size,0,$pic_w,$pic_h,$te,'verdana.ttf',$str);
- //開源代碼Vevb.com
- header("content-type: image/jpeg");
- imagejpeg($im);
新聞熱點
疑難解答