php 七牛 图片拼接+裁剪

    use Qiniu\Auth;
    use Qiniu\Processing\PersistentFop;

    $img_str=explode(",",trim($_POST['img_str'],","));//111.jpg,222.jpg,333.jpg....
    if(count($img_str)!=6){
            $this->ajaxreturn(array("type"=>"error","msg"=>"必须上传6张图"));
        }
    //直接上传到七牛
    $bucket = Config::BUCKET_IMG_NAME;
    $auth = new Auth(Config::AK, Config::SK);

    //图片处理时使用的队列名称 
    $pipeline = "";
    //背景图片地址
    //$key = Qiniu\base64_urlSafeEncode($bucket.":"."背景图片的七牛地址");
             for($i=0;$i<6;$i++){
            if($img_str[$i]==""){$img_str[$i]=$img_str[0];}
            $iimg[]=Qiniu\base64_urlSafeEncode($img_str[$i]);
        }
    //往背景图片NorthWest方位连续添加需要拼接的图片 dx横向坐标为每张图片的宽度,因为方位想通不加坐标的话就会覆盖
    $fops = "watermark/1/gravity/NorthWest/dx/0/image/".$iimg[0]."|watermark/1/gravity/NorthWest/dx/50/image/".$iimg[1]."|watermark/1/gravity/NorthWest/dx/100/image/".$iimg[2]."|watermark/1/gravity/NorthWest/dx/150/image/".$iimg[3]."|watermark/1/gravity/NorthWest/dx/200/image/".$iimg[4]."|watermark/1/gravity/NorthWest/dx/250/image/".$iimg[5]."|imageMogr2/gravity/NorthWest/crop/!300x50";
    //可以对转码后的文件进行使用saveas参数自定义命名,当然也可以不指定文件会默认命名并保存在当间
    $name=time().".png";
    $savekey = Qiniu\base64_urlSafeEncode($bucket.":".$name);//不指定名称让七牛随机生成

    $fops = $fops.'|saveas/'.$savekey;
    $config = new \Qiniu\Config();
    $pfop = new PersistentFop($auth, $config);

    list($id, $err) = $pfop->execute($bucket,'背景图片名称(是名称不是路径不是路径)', $fops, $pipeline, '', false);

猜你喜欢

转载自blog.csdn.net/yao978318542/article/details/78657860