【精简实用系列】下载远程图片并添加中文水印|imagettftext

精简实用9年前 (2016-05-25)13970

下载远程图片并添加中文水印|imagettftext
1.//图片自定义地址生成方法
public function imgFile($url){
    if(empty($url)){
        return false;
    }
    $ext = strrchr($url, '.');
    if($ext != '.gif' && $ext != ".jpg" && $ext != ".bmp" && $ext != ".png" && $ext != ".jpeg"){
        echo "格式不支持!";
        return false;
    }
    $date = date("Y-m-d",time());
    $time = explode("-",$date);
    $dir = 'data/upload/editer/image/';
    if(!is_dir($dir.$time[0])) {
        mkdir($dir.$time[0]."/".$time[1]."/".$time[2],0777,true);
    }else{
        if(!is_dir($dir.$time[0]."/".$time[1])){
            mkdir($dir.$time[0]."/".$time[1]."/".$time[2],0777,true);
        }else{
            if(!is_dir($dir.$time[0]."/".$time[1]."/".$time[2])){
                mkdir($dir.$time[0]."/".$time[1]."/".$time[2],0777,true);
            }
        }
    }
    $filename = $dir.$time[0]."/".$time[1]."/".$time[2].'/'.time().$ext;
    return $filename;
}
2.远程图片下载并添加中文水印
public function GrabImage($url){
    $filename = $this->imgFile($url);
    $size = getimagesize($url);
    $width = $size[0];
    $height = $size[1];
    $heights = $height-20;
    $ext = strrchr($url, '.');
    $font="static/font/wryh.ttf";
    $text = '热淘网 www.retao5.com';
    if($ext == ".jpg" || $ext == ".jpeg"){
        $image=@imagecreatefromjpeg($url);
        if($image){
            $bg=imagecolorallocate($image,255,255,255);//白色背景
            $font_color=imagecolorallocate($image,0,0,0);//水印文字黑色
            imagefilledrectangle($image,0,$heights,$width,$height,$bg);
            imagettftext($image,13,0,$width-200,$height-5,$font_color,$font,$text);
            imagejpeg($image,$filename);
            imagedestroy($image);
        }else{
            echo $url.'图片载入失败';
            exit;
        }

    }
    return '/'.$filename;
}
3.调用远程图片下载及添加水印方法
public function updownImg(){
$url = 'http://www.retao5.com/data/upload/editer/image/2016/05/25/1464120736.jpg';
$imgsta = $this->GrabImage($url);
    if($imgsta){
        echo '图片下载成功!';
        exit;
    }else{
        echo '图片下载失败!';
        exit;
    }
}

“【精简实用系列】下载远程图片并添加中文水印|imagettftext” 的相关文章

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。