製作文字水印圖片、圖片水印
阿新 • • 發佈:2019-02-20
1.製作文字水印,示例如下:
如果你在顯示圖片出現如下情況:
可以確定你的編碼格式有問題,建議你除錯程式,將程式編碼格式統一設定。
上述實現程式碼:
fontMark.php檔案:
<?php
/*
* 開啟圖片
*/
//1.配置圖片路徑
$src="aodi.jpg";
//2.獲取圖片資訊
$info=getimagesize($src);
//3.通過影象的編號獲取影象的型別
$type=image_type_to_extension($info[2],false);
//4.在記憶體中建立一個和我們影象型別一樣的影象
$fun="imagecreatefrom{$type}";
//5.把圖片複製到我們的記憶體中
$image=$fun($src);
/*
* 操作圖片
*/
//1.設定字型的路徑
$font='msyh.ttf';
//2.填寫我們的水印內容
$content="你好,奧迪車主!";
// $content=iconv("GB2312","UTF-8",$content);//轉換格式--很重要不然亂碼
//3.設定字型的顏色RGB和透明度
$color=imagecolorallocate($image , 255, 255, 255);
//4.寫入文字
imagettftext($image, 20,0,20,30,$color,$font,$content);
/*
* 輸出圖片
*/
//瀏覽器輸出
ob_clean();
header("Content-Type:".$info['mime']);
$func="image{$type}";
$func($image);
//儲存圖片
//$func($image,'newimage.'.$type);
/*
* 銷燬圖片
*/
imagedestroy($image);
?>
2.製作圖片水印,也就是在圖片上打上自己的logo。
實現程式碼如下:
imageMark.php檔案:
<?php
/*
* 開啟圖片
*/
//1.配置圖片路徑
$src="aodi.jpg";
//2.獲取圖片資訊
$info=getimagesize($src);
//3.通過影象的編號獲取影象的型別
$type=image_type_to_extension($info[2],false);
//4.在記憶體中建立一個和我們影象型別一樣的影象
$fun="imagecreatefrom{$type}";
//5.把圖片複製到我們的記憶體中
$image=$fun($src);
/*
* 操作圖片
*/
//1.設定圖片的路徑
$image_Mark="imooc.png";
//2.獲取水印圖片的基本資訊
$info2=getimagesize($image_Mark);
//3.通過水印的影象編號來獲取水印的圖片型別
$type2=image_type_to_extension($info2[2],false);
//4.在記憶體中建立一個和我們水印圖片一致的圖片型別
$func2="imagecreatefrom{$type2}";
//5.吧水印圖片複製到記憶體中
$water=$func2($image_Mark);
//6.合併圖片
imagecopymerge($image, $water, 20, 30, 0, 0, $info2[0], $info2[1], 30);//imagecopymergegray — 複製和合並與灰度影象的一部分
//7.銷燬水印圖片
imagedestroy($water);
/*
* 輸出圖片
*/
//瀏覽器輸出
ob_clean();
header("Content-Type:".$info['mime']);
$func="image{$type}";
$func($image);
//儲存圖片
$func($image,'imageMark.'.$type);
/*
* 銷燬圖片
*/
imagedestroy($image);
?>
以上學習的PHP製作圖片的方法是在 慕課網 學習的,視屏課程講的很詳細,受用了!