PHP添加自动添加水印功能: 获取水印文件和源图片: $watermark = 'abc.jpg'; //水印 $filename = 'source.jpg'; //源图 $watermark_info = @getimagesize($watermark); $watermark_handle = $this->img_resource($watermark, $watermark_info[2]); // 根据文件类型获得原始图片的操作句柄 $source_info = @getimagesize($filename); $source_handle = $this->img_resource($filename, $source_info[2]); // 根据系统设置获得水印的位置 $x = $source_info[0]/2 - $watermark_info[0]/2; $y = $source_info[1]/2 - $watermark_info[1]/2; if (strpos(strtolower($watermark_info['mime']), 'png') !== false) { imageAlphaBlending($watermark_handle, true); imagecopy($source_handle, $watermark_handle, $x, $y, 0, 0,$watermark_info[0], $watermark_info[1]); }else{ imagecopymerge($source_handle, $watermark_handle, $x, $y, 0, 0,$watermark_info[0], $watermark_info[1],80); } $target = $filename ; switch ($source_info[2] ) { case 'image/gif': case 1: imagegif($source_handle, $target); break; case 'image/pjpeg': case 'image/jpeg': case 2: imagejpeg($source_handle, $target); break; case 'image/x-png': case 'image/png': case 3: imagepng($source_handle, $target); break; } imagedestroy($source_handle); //结束添加水印功能