1、图片添加文字水印
/**
*添加文字水印
* @param string $filename
* @param string $text
* @param string $fontfile
*/
function waterText($filename,$text="imooc.com",$fontfile="MSYH.TTF"){
$fileInfo = getimagesize ( $filename );//得到图片信息
$mime = $fileInfo ['mime'];
//echo $mime;//image/jpeg,image/gif
$createFun = str_replace ( "/", "createfrom", $mime );//imagecreatefromjpeg
$outFun = str_replace ( "/", null, $mime );//imagejpeg
$image = $createFun ( $filename );//imagecreatefromjpeg()
$color = imagecolorallocatealpha ( $image, 255, 0, 0, 50 ); //文字颜色
$fontfile = "fonts/{$fontfile}";//字体文件
imagettftext ( $image, 14, 0, 0, 14, $color, $fontfile, $text );
$outFun ( $image, $filename );//imagejpeg()
imagedestroy ( $image );
}
2、图片添加图片水印
/**
*添加图片水印
* @param string $dstFile 底图
* @param string $srcFile 水印图片
* @param int $pct 透明度
*/
function waterPic($dstFile,$srcFile="../images/logo.jpg",$pct=30){
$srcFileInfo = getimagesize ( $srcFile );//得到图片信息
$src_w = $srcFileInfo [0];
$src_h = $srcFileInfo [1];
$dstFileInfo = getimagesize ( $dstFile );
$srcMime = $srcFileInfo ['mime'];
$dstMime = $dstFileInfo ['mime'];
$createSrcFun = str_replace ( "/", "createfrom", $srcMime );//imagecreatefromjpeg
$createDstFun = str_replace ( "/", "createfrom", $dstMime );//imagecreatefromjpeg
$outDstFun = str_replace ( "/", null, $dstMime );//imagejpeg
$dst_im = $createDstFun ( $dstFile );//imagecreatefromjpeg()创建画布资源
$src_im = $createSrcFun ( $srcFile );//imagecreatefromjpeg()创建画布资源
imagecopymerge ( $dst_im, $src_im, 0, 0, 0, 0, $src_w, $src_h, $pct );
//header ( "content-type:" . $dstMime );
$outDstFun ( $dst_im, $dstFile );//imagejpeg
imagedestroy ( $src_im );
imagedestroy ( $dst_im );
}