TP5.1如何生成海报

小编给大家分享一下TP5.1如何生成海报,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

目前成都创新互联已为上1000+的企业提供了网站建设、域名、网页空间、网站改版维护、企业网站设计、网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。我们拥有完善的网络基础设施服务,能够为企业或个人提供空间域名、网页空间、企业邮局、网站加速、数据库、云主机等网络基础服务。

//远程下载图片
function downImg($imgUrl, $savePath = '',$filename = '')
{
    if(!isDirFile($savePath)){
        mkdir($savePath,0777,true);
    }
    if($savePath == ''){
        return false;
    }
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $imgUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);//这个是重点。
    $file = curl_exec($ch);
    curl_close($ch);
    $ext = pathinfo($imgUrl,PATHINFO_EXTENSION);
    if(!$ext)
    $ext = 'png';
    $resource = fopen($savePath . $filename . '.' .$ext, 'w');
    $res = fwrite($resource, $file);
    fclose($resource);
    if($res){
        return $filename . '.' .$ext;
    }else{
        return false;
    }
}

//生成缩略图
function imgToThumb($imgUrl){
    $image = \think\Image::open($imgUrl);
    $image->thumb(104, 104)->radius(50)->save($imgUrl);
}
//判断文件或者目录是否存在
function isDirFile($path,$isfile = false){
    if($isfile){
        return file_exists($path) ? true : false;
    }else{
        return is_dir($path) ? true : false;
    }
}
//水印
function water($codefile,$text,$newFile,$waterBg="./uploads/haibao.jpg"){
    //判断图片尺寸-生成缩略图
    list($width, $height, $type, $attr) = getimagesize($codefile);
    if($width > 104 || $height > 104){
        imgToThumb($codefile);
    }
    if(!isDirFile(\Env::get('root_path').'public/'.$waterBg,true)){
        return false;
    }
    $image = \think\Image::open($waterBg);

    /*
    if($strlen>8){
        $text = mb_substr($text,0,8,'UTF-8').'...';
        $offset = [380,985];
    }
    */
    $textName = isset($text[0]) ? $text[0] : '';
    $textData = isset($text[1]) ? $text[1] : '';
    $textDays = isset($text[2]) ? $text[2] : '';
    $textNums = isset($text[3]) ? $text[3] : '';

    $image->text($textName,\Env::get('root_path').'public/static/font/msyh.ttf',24,'#323232',[150,822])
    ->text($textData,\Env::get('root_path').'public/static/font/msyh.ttf',14,'#c5a98f',[150,864])
    ->text($textDays,\Env::get('root_path').'public/static/font/msyh.ttf',46,'#9e7758',[360,810])
    ->text($textNums,\Env::get('root_path').'public/static/font/msyh.ttf',46,'#9e7758',[540,810])
    ->water($codefile,[36,804])->save($newFile); 
    return $newFile;
}

以上是“TP5.1如何生成海报”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


网页名称:TP5.1如何生成海报
本文来源:http://ybzwz.com/article/iegggc.html