网站SEO优化教程|技术分享|源码分享

本博客文章均是作者原创,记录码砖的点点滴滴,不介意搬砖,希望大家转载注明出处,感谢ing……




PHP在图片中心位置加水印


 2020-11-13 09:18:30  浏览量:(431)   标签: PHP水印 




<?php

$img = $_FILES;
if(empty($img)){
    echo "<form action=\"\" type=\"\" enctype=\"multipart/form-data\" method=\"post\">
        <input name=\"img\" type=\"file\">
        <br><br><br>
        <button type=\"submit\">生成<tton>
    </form>";
    die;
}else{
    $dst_path = $img['img']['tmp_name'];
    $water_img = 'img/2.png';//水印
    $houzhui1 = substr(strrchr($img['img']['name'], '.'), 1);
    $file = @getimagesize($dst_path);
    if(empty($file)){
        die('图片不存在!');
    }
    $waterinfo = @getimagesize($water_img);
    if(empty($waterinfo)){
        die('水印图不存在!');
    }
    $water = imagecreatefrompng($water_img);
//创建图片的实例
    if($houzhui1 == 'jpg'){
        $dst = imagecreatefromjpeg($dst_path);
    }elseif ($houzhui1 == 'png'){
        $dst = imagecreatefrompng($dst_path);
    }elseif ($houzhui1 == 'gif'){
        $dst = imagecreatefromgif($dst_path);
    }
    list($dst_w, $dst_h, $dst_type) = $file;
//生成透明背景的底图
    $image = imagecreatetruecolor($dst_w, $dst_h); //创建一个彩色的底图
    $color = imagecolorallocate($image, 1000, 1000, 1000);
    imagefill($image, 0, 0, $color);
    imageColorTransparent($image, $color);
    imagecopyresampled($image, $dst, 0, 0, 0, 0,$dst_w,$dst_h,$dst_w, $dst_h);
//生成透明背景的水印图
    $image2 = imagecreatetruecolor($waterinfo[0], $waterinfo[1]); //创建一个彩色的底图
    $color2 = imagecolorallocate($image2, 1000, 1000, 1000);
    imagefill($image2, 0, 0, $color2);
    imageColorTransparent($image2, $color2);
    imagecopyresampled($image2, $water, 0, 0, 0, 0,$waterinfo[0],$waterinfo[1],$waterinfo[0], $waterinfo[1]);
    $x = $dst_w/2-$waterinfo[0]/2;
    $y = $dst_h/2-$waterinfo[1]/2;
    imagecopymerge($image, $image2, $x, $y, 0, 0, $waterinfo[0], $waterinfo[1], 50);
    switch ($dst_type) {
        case 1://GIF
            header('Content-Type: image/gif');
            imagegif($image);
            break;
        case 2://JPG
            header('Content-Type: image/jpeg');
            imagejpeg($image);
            break;
        case 3://PNG
            header('Content-Type: image/png');
            imagepng($image);
            break;
        default:
            break;
    }
    imagedestroy($dst);
    imagedestroy($image);
}

?>



如文章内容失效请联系作者更新,感谢ing,如有任何疑问点击网站提问按钮;

本文由【日韩赶SEO】原创,转载请注明出处,违者必究:http://4asport.com/post/107.html

提问 刷新 ^

友情链接:A5源码

Copyright ?2019 【日韩赶SEO】京ICP备25252500号