copy($_FILES['photo']['tmp_name'], $target_path);  //已经把上传图片copy到目标路径
waterpic($target_path); //给上传的图片加水印, waterpic是水印函数,但是上传图片后,发现没有加水印上去function waterpic($groundImage)
 { 
 
$isWaterImage = FALSE; 
$waterPos=1;
$waterImage=""; //水印图片名称
$waterText="www.aaa.com";
$fontSize=12;
$textColor="#FF0000";
$fontfile='texb.ttf';
$xOffset=0;
$yOffset=0;    //读取水印文件 
    if(!empty($waterImage) && file_exists($waterImage)) { 
        $isWaterImage = TRUE; 
        $water_info = getimagesize($waterImage); 
        $water_w    = $water_info[0];//取得水印图片的宽 
        $water_h    = $water_info[1];//取得水印图片的高         switch($water_info[2]) {   //取得水印图片的格式 
            case 1:$water_im = imagecreatefromgif($waterImage);break; 
            case 2:$water_im = imagecreatefromjpeg($waterImage);break; 
            case 3:$water_im = imagecreatefrompng($waterImage);break; 
            default:return 1; 
        }
    }     //读取背景图片 
    if(!empty($groundImage) && file_exists($groundImage)) { 
        $ground_info = getimagesize($groundImage); 
        $ground_w    = $ground_info[0];//取得背景图片的宽 
        $ground_h    = $ground_info[1];//取得背景图片的高         switch($ground_info[2]) {   //取得背景图片的格式 
            case 1:$ground_im = imagecreatefromgif($groundImage);break; 
            case 2:$ground_im = imagecreatefromjpeg($groundImage);break; 
            case 3:$ground_im = imagecreatefrompng($groundImage);break; 
            default:return 1; 
        } 
    } else { 
        return 2; 
    }     //水印位置 
    if($isWaterImage) { //图片水印 
        $w = $water_w; 
        $h = $water_h; 
        $label = "图片的";
        } else { 
    //文字水印 

       if(!file_exists($fontfile))return 4;
        $temp = imagettfbbox($fontSize,0,$fontfile,$waterText);//取得使用 TrueType 字体的文本的范围 
        $w = $temp[2] - $temp[6]; 
        $h = $temp[3] - $temp[7]; 
        unset($temp); 
    } 

    if( ($ground_w < $w) || ($ground_h < $h) ) { 
        return 3; 
    } 

    switch($waterPos) { 
        case 0://随机 
            $posX = rand(0,($ground_w - $w)); 
            $posY = rand(0,($ground_h - $h)); 
            break; 
        case 1://1为顶端居左 
            $posX = 0; 
            $posY = 0; 
            break; 
        case 2://2为顶端居中 
            $posX = ($ground_w - $w) / 2; 
            $posY = 0; 
            break; 
        case 3://3为顶端居右 
            $posX = $ground_w - $w; 
            $posY = 0; 
            break; 
        case 4://4为中部居左 
            $posX = 0; 
            $posY = ($ground_h - $h) / 2; 
            break; 
        case 5://5为中部居中 
            $posX = ($ground_w - $w) / 2; 
            $posY = ($ground_h - $h) / 2; 
            break; 
        case 6://6为中部居右 
            $posX = $ground_w - $w; 
            $posY = ($ground_h - $h) / 2; 
            break; 
        case 7://7为底端居左 
            $posX = 0; 
            $posY = $ground_h - $h; 
            break; 
        case 8://8为底端居中 
            $posX = ($ground_w - $w) / 2; 
            $posY = $ground_h - $h; 
            break; 
        case 9://9为底端居右 
            $posX = $ground_w - $w; 
            $posY = $ground_h - $h; 
            break; 
        default://随机 
            $posX = rand(0,($ground_w - $w)); 
            $posY = rand(0,($ground_h - $h)); 
            break;     
    }     //设定图像的混色模式 
    imagealphablending($ground_im, true);     if($isWaterImage) { //图片水印 
        imagecopy($ground_im, $water_im, $posX + $xOffset, $posY + $yOffset, 0, 0, $water_w,$water_h);//拷贝水印到目标文件         
    } else {//文字水印
        if( !empty($textColor) && (strlen($textColor)==7) ) { 
            $R = hexdec(substr($textColor,1,2)); 
            $G = hexdec(substr($textColor,3,2)); 
            $B = hexdec(substr($textColor,5)); 
        } else { 
          return 5;
        } 
        imagettftext ( $ground_im, $fontSize, 0, $posX + $xOffset, $posY + $h + $yOffset, imagecolorallocate($ground_im, $R, $G, $B), $fontfile, $waterText);
    } 
    //生成水印后的图片 
    @unlink($groundImage); 
    switch($ground_info[2]) {//取得背景图片的格式 
        case 1:imagegif($ground_im,$groundImage);break; 
        case 2:imagejpeg($ground_im,$groundImage);break; 
        case 3:imagepng($ground_im,$groundImage);break; 
        default: return 6; 
    } 
    //释放内存 
    if(isset($water_info)) unset($water_info); 
    if(isset($water_im)) imagedestroy($water_im); 
    unset($ground_info); 
    imagedestroy($ground_im); 
    //
    return 0;
   
 }