Hướng dẫn dynamically add watermark to image php - thêm hình mờ động vào php hình ảnh
// Cấu hình đường dẫn & nbsp; $targetDir="uploads/";="uploads/"; $watermarkImagePath='tutorials-website-logo.png';='tutorials-website-logo.png'; $statusMsg='';=''; if(isset($_POST["submit"])){(isset($_POST["submit"])){ if(!empty($_FILES["file"]["name"])){if(!empty($_FILES["file"]["name"])){ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; //// File upload path $fileName=basename($_FILES["file"]["name"]);$fileName =basename($_FILES["file"]["name"]); $targetFilePath=$targetDir.$fileName;$targetFilePath=$targetDir.$fileName; $fileType=pathinfo($targetFilePath,PATHINFO_EXTENSION);$fileType =pathinfo($targetFilePath,PATHINFO_EXTENSION); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;// Allow certain file formats $allowTypes=array('jpg','png','jpeg');$allowTypes= array('jpg','png','jpeg'); if(in_array($fileType,$allowTypes)){if(in_array($fileType,$allowTypes)){ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;// Upload file to the server if(move_uploaded_file($_FILES["file"]["tmp_name"],$targetFilePath)){if(move_uploaded_file($_FILES["file"]["tmp_name"],$targetFilePath)){ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;// Load the stamp and the photo to apply the watermark to $watermark_png_Img=imagecreatefrompng($watermarkImagePath);$watermark_png_Img=imagecreatefrompng($watermarkImagePath); switch($fileType){switch($fileType){ case'image/jpg':case'image/jpg': $imagesource=imagecreatefromjpeg($targetFilePath);$imagesource= imagecreatefromjpeg($targetFilePath); break;break; case'image/jpeg':case 'image/jpeg': $imagesource=imagecreatefromjpeg($targetFilePath);$imagesource=imagecreatefromjpeg($targetFilePath); break;break; case'image/png':case'image/png': $imagesource=imagecreatefrompng($targetFilePath);$imagesource= imagecreatefrompng($targetFilePath); break;break; default:default: $imagesource=imagecreatefromjpeg($targetFilePath);$imagesource=imagecreatefromjpeg($targetFilePath); }} & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; $ water_width = ImageSx ($ watermark_png_img);// Set the margins for the watermark $marge_right=10;$marge_right=10; $marge_bottom=10;$marge_bottom =10; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;$water_width=imagesx($watermark_png_Img); $water_height=imagesy($watermark_png_Img);$water_height= imagesy($watermark_png_Img); $dime_x=imagesx($imagesource)-imagesx($watermark_png_Img)-$marge_right;$dime_x=imagesx($imagesource)-imagesx($watermark_png_Img)-$marge_right; $dime_y=imagesy($imagesource)-imagesy($watermark_png_Img)-$marge_bottom;$dime_y =imagesy($imagesource)-imagesy($watermark_png_Img)-$marge_bottom; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;// Copy the watermark image onto our photo using the margin offsets and // the photo width to calculate the positioning of the watermark. imagecopy($imagesource,$watermark_png_Img,$dime_x,$dime_y,0,0,$water_width,$water_height);imagecopy($imagesource,$watermark_png_Img, $dime_x,$dime_y,0,0,$water_width,$water_height); & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;// Save image and free memory imagepng($imagesource,$targetFilePath);imagepng($imagesource, $targetFilePath); imagedestroy($imagesource);imagedestroy($imagesource); if(file_exists($targetFilePath)){if(file_exists($targetFilePath)){ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;tải lên thành công.";$statusMsg="The image with watermark has been uploaded successfully."; }else{}else{ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;lại.";$statusMsg ="Image upload failed, please try again."; } } }else{}else{ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;$statusMsg ="Sorry, there was an error uploading your file."; }} }else{}else{ & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp; & nbsp;$statusMsg ='Sorry, only JPG, JPEG, and PNG files are allowed to upload.'; }} }else{}else{ & nbsp;$statusMsg='Please select a file to upload.'; }} } ?> |