在php中要給圖片加水印我們需要給php安裝GD庫了,這裡我們不介紹GD庫安裝,只介紹怎麼利用php給圖片添加文字水印並添加文字陰影效果。
GD庫,是php處理圖形的擴展庫,GD庫提供了一系列用來處理圖片的API,使用GD庫可以處理圖片,或者生成圖片。 在網站上GD庫通常用來生成縮略圖,或者用來對圖片加水印,或者用來生成漢字驗證碼,或者對網站數據生成報表等。
生成效果圖:
GD庫的安裝什麼的網上都有,現在很多虛擬空間也都支持,這裡就不再贅述。下面通過我實際應用代碼的實例和相關的注釋為大家介紹一下GD庫的使用方法。
代碼如下
復制代碼
$str="北京";
$str2= "空氣質量:輕度污染";
// 通過圖片生成一個對象$im
$im = imagecreatefromjpeg("images/3.jpg");
//載入字體zt.ttf
$fnt = "zt.ttf";
//創建顏色,用於文字字體的白和陰影的黑
$white=imagecolorallocate($im,222,229,207);
$black=imagecolorallocate($im,50,50,50);
//創建關於相對圖片位置的函數,方便調用
$top=100;
$left=60;
$top2=170;
//在圖片中添加文字,imagettftext (image,size,angle, x, y,color,fontfile,text)
imagettftext($im,41, 0, $left+1, $top+1, $black, $fnt, $str);
imagettftext($im,41, 0, $left, $top, $white, $fnt, $str);
imagettftext($im,43, 0, $left+1,$top2+1 , $black, $fnt, $str2);
imagettftext($im,43, 0, $left,$top2, $white, $fnt, $str2);
//將$im輸出
ImageJpeg($im);
//銷毀$im對象
ImageDestroy($im);
接下來詳細解釋一下:
代碼如下
復制代碼
imagettftext (image,size,angle, x, y,color,fontfile,text)
imagettftext() 是將字符串 text畫到 image所代表的圖像上,從坐標 x,y(左上角為 0, 0)開始,角度為 angle,顏色為 color,使用 fontfile 所指定的 TrueType 字體文件。
由 x,y 所表示的坐標定義了第一個字符的基本點大概在字符的左下角。
angle 以角度表示,0 度為從左向右閱讀文本,更高的值表示逆時針方向(即如果值為 90 則表示從下向上閱讀文本)。
fontfile 是想要使用的 TrueType 字體的文件名。
text 是文本字符串,可以包含 UTF-8 字符序列。
color 是顏色的索引值。