为了账号安全,请及时绑定邮箱和手机立即绑定
  • ob_clean();

    header('content-type:image/jpeg');

    //应该很多人遇到“明明一样的代码,却显示不出来”的问题

    //在header前面加一行“ob_clean();”就可以了


    查看全部
    0 采集 收起 来源:GD库操作流程

    2020-01-16

  • 把range与rand弄混了

    查看全部
  • imagepng, 后妈带上文件名,则将文件保存到本地


    查看全部
  • 与验证码封装 一样,即在图片里写文字

    imagettftext()使用该函数

    查看全部
  • /*

    *返回图片信息

    *@param    [string]    $filename    [文件名]

    *@return    [array]     包含图片宽度、高度、创建和输出的字符串及扩展名

    */

    function _getImageinfo($filename){

    if(@!$info=getimagesize($filename)){

        exit("文件不是图像');

    }

    $fileInfo['width']=$inf[0];//得到宽高

    $fileInfo['height']=$info[1];

    $mime=image_type_to_mime_type($info[2]);//获取文件类型

    $createFun=str_replace('/','createfrom',$mime);//替换'/'为获取的文件类型

    $outFun=str_replace('/','',$mime);//输出目标图片文件'/'替换为mime

    $fileIfo['createFun']=$createfun;

    $fileIfo['outFun']=$outFun;

    $fileIfo['ext']=strtolower(image_type_to_extension($info[2]));//获取文件后缀

    return $fileIfo;

    }

    //生成缩略图函数

    function thumb($filename,$dst_w=null,$dst_h=null,$dest,$pre,$scale=0.5,$delSource){

    $filename='1.jpeg';

    /*$scale=0.5;

    $dst_w=200;

    $dst_h=200;

    $dest='目录';

    $pre='文件名前缀';

    $delSource=false;//是否删除源文件

    */ //于封装函数处设置默认值

    $randNum=mt_rand(100000,999999);生成随机6位数数字为文件名

    $fileInfo=_getImageinfo($filename);

    $src_w=$fileInfo['width'];

    $src_h=$fileInfo['height'];

    //如果设置最大宽和高按等比例执行

    if(is_numeric($dst_w)&&is_numeric($dst_w)){

    //前篇处理方式

    }else{

    //没有指定则按照默认缩放比例执行

    $dst_w=ceil($src_w*$scale);

    $dst_h=ceil($src_h*$scale);

    }

    $dst_image_50=imagecreatetruecolor($dst_w,$dst_h);

    #src_image=$fileIfo['createFun']($filename);

    imagecopyresampled($dst_image,$src_image,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h);

    //检测目标目录是否存在,不存在则创建

    if($dest&&!file_exists($dest)){

    mkdir($dest,0777,ture)

    }

    $destName="{$pre}{$randNum}".$fileInfo['ext'];//生成的文件名

    $destination=$dest?$dest.'/'.$destName:$destName;//生成文件若指定路径则加上路径,否则直接使用文件名

    $fileIfo['outFun']($dst)image,$destination);//保存文件

    imagedestroy($dst_image);//销毁目标资源

    imagedestroy($src_image);//销毁源图资源

    if($delSource){

    @unlink($filename);

    }

    return $destination;

    查看全部
  • $filename='ipad.png';//得到原图片资源注意填写正确目录

    $fileInfo=getimagesize($filename);//得到图片信息赋值于$fileInfo

    if($fileInfo){//验证图片是否真实

    list($src_w,$src_h)=$fileInfo;//得到原图像宽高

    }else{

    dei('文件不是真实图片')

    }

    $src_image=imagecreatefrompng($filename);得到原图 PS:png可更换其他类型图片,如jpeg、gif等

    $dst_image_50=imagecreatetruecolor(50,50);//目标图片50*50

    $dst_image_270=imagecreatetruecolor(270,270);

    imagecopyresampled($dst_image_50,$src_image,0,0,0,0,50,50,$src_w,$src_h);

    imagepng($dst_image_50,'xx/xxx')//保存图片,PS:xx/xxx为保存的文件名称以及前缀目录

    imagedestroy($dst_image_50);//销毁目标资源

    imagedestroy($src_image);//销毁源图资源

    $width = 200;// 设置最大宽高

    $height = 200;

    //等比例缩放图片

    $ratio_orig=$src_w/$src_h;

    if ($dst_w/$dst_h > $ratio_orig) {//
       $$dst_w = $dst_h*$ratio_orig;
    } else {
       $dst_h = $dst_w/$ratio_orig;
    }
    //执行上诉流程获取画布资源接着创建即可

    查看全部
  • 1
    查看全部
  • Gd库字体,在windows里面打开方式为:开始—运行—fonts.


    查看全部
  • 多图片批量处理,比GD扩展性能高得多的扩展为ImageMagick和Gmagick

    查看全部
    0 采集 收起 来源:课程总结

    2019-01-03

  • PHP图片类库 PHPThumb、Zebra

    查看全部
  • //封装一个函数,用于返回图像信息
    function getImageInfo($filename){
       //检测$filename是否是一个图片
        if (!$info = getimagesize($filename)){
               exit('文件不是真实图片!');//或者直接返回false
        }
        //将得到的图片各种信息保存在数组里面
        //得到图片的宽高和类型
        $fileInfo['width'] = $info[0];
        $fileInfo['height'] = $info[1];
        $mime = $info['mime'];
        //自带函数得到类型
    //    $mime = image_type_to_mime_type($info[2]);
        //使用$mime替换成可用函数
        $create = str_replace('/','createfrom',$mime);//创建画布资源
        $outimage = str_replace('/',null,$mime);//保存图像类型
        $latename = strtolower(image_type_to_extension($info[2]));//得到图片后缀名
        $fileInfo['resource'] = $create;
        $fileInfo['output'] = $outimage;
        $fileInfo['ext'] = $latename;
        //返回数组
        return $fileInfo;
    }
    
    //封装成生成缩略图的函数
    function thumb($filename,$dest = '../thumb/',$pre = 'thumb',$destdel = false,
                     $dst_w = 200,$dst_h=139){
        //图片路径
       // $filename = '../Public/Image/12.jpg';
    //调用函数,得到图片信息
        $imaheInfon = getImageInfo($filename);
        //图片缩放分两种情况
        //$scale = 0.5;//设置比例缩放为一半,没有设置最大宽高
    //设置了最大宽高,按等比例算法来做
        //$dst_w = 200;
        //$dst_h = 150;
        //得到原图像的宽高
        $src_w = $imaheInfon['width'];
        $src_h = $imaheInfon['height'];
        /**使用if判断$dst_w 、$dst_h是否设置了宽高,is_numeric() 函数用于判断
         * 检测变量是否为数字或数字字符串,为真返回 TRUE,否则返回 FALSE
         *
         */
        if(is_numeric($dst_w)&&is_numeric($dst_h)){
            //设置了最大宽高,按等比例算法来做
            $ratio_orig = $src_w/$src_h;
            if ($dst_w/$dst_h > $ratio_orig){
                $dst_w =$dst_h*$ratio_orig;
            }else{
                $dst_h = $dst_w/$ratio_orig;
            }
        }else{
            //设置比例缩放为一半,没有设置最大宽高
            $dst_w =ceil( $src_w*$scale);//ceil()取整
            $dst_h =ceil( $src_h*$scale);
        }
    //创建画布资源
        $dst_image = imagecreatetruecolor($dst_w,$dst_h);
    //$src_image = imagecreatetruecolor($src_w,$src_h);
        $src_image = $imaheInfon['resource']($filename);
    //生成缩略图
        imagecopyresampled($dst_image,$src_image,0,0,0,0,
            $dst_w,$dst_h,$src_w,$src_h);
    //指定保存路径
    //    $dest = '../thumb/';
    //判断目录是否存在,不存在则创建,file_exists() 函数检查文件或目录是否存在
        if ($dest && !file_exists($dest)){
            //mkdir() 函数创建目录
            mkdir($dest,0777,true);
        }
    //防止重名产生覆盖,可定义一个前缀,再拼上一个随机数
    //    $pre = 'thumb';
        $randNum = mt_rand(1000,9999);
        $destname ="{$pre}_{$randNum}".$imaheInfon['ext'];//文件名
        $destination = $dest ? $dest.'/'.$destname:$destname;//判断文件路径
        $imaheInfon['output']($dst_image,$destination);//保存文件到路径
        return $destination;//返回文件路径
        //是否删除源文件
    //    $destdel = false;//设置默认为false
        if ($destdel){
            unlink($filename);//删除文件
        }
    
    //销毁资源
        imagedestroy($dst_image);
        imagedestroy($src_image);
    }
    $filename = '../Public/Image/11.jpg';
    thumb($filename);


    查看全部
  • header('content-type:text/html;charset=utf-8');
    //定义要操作图片的文件
    $filename = '../Public/Image/11.jpg';
    //得到图片的信息
    $fileinfo = getimagesize($filename);//返回值是数组
    //print_r($fileinfo);
    //exit();
    //检测是否为真
    if ($fileinfo){
        //得到原始图像的宽高
        $src_w=$fileinfo[0];
        $src_h=$fileinfo[1];
        $mime = $fileinfo['mime'];//得到图片类型
    }else{
        die('文件不是真实图片');
    }
    //根据图片类型得到创建画布资源的函数
    $filetype = str_replace('/','createfrom',$mime);
    //根据图片类型得到保存输出图像的函数
    $outspace = str_replace('/',null,$mime);
    //根据图片类型得到保存图像的后缀名
    $latename = str_replace('image/',null,$mime);
    //echo $latename;
    //exit();
    //动态创建原画布资源
    $src_image = $filetype($filename);
    //设置最大的宽高1000,695
    $dst_w = 450;
    $dst_h = 300;
    $ratio_orig = $src_w/$src_h;
    
    if ($dst_w/$dst_h > $ratio_orig) {
        $dst_w = $dst_h*$ratio_orig;
    } else {
        $dst_h = $dst_w/$ratio_orig;
    }
    
    $dst_image = imagecreatetruecolor($dst_w,$dst_h);
    //缩略图
    imagecopyresampled($dst_image,$src_image,
                       0,0,0,0,
                        $dst_w,$dst_h,$src_w,$src_h);
    $outspace($dst_image,'../Public/Image/bl.'.$latename);
    imagedestroy($dst_image);
    imagedestroy($src_image);


    查看全部
  • header('content-type:text/html;charset=utf-8');
    //定义要操作图片的文件
    $filename = '../Public/Image/11.jpg';
    //得到图片的信息
    $fileinfo = getimagesize($filename);//返回值是数组
    //检测是否为真
    if ($fileinfo){
        //得到原始图像的宽高
        $src_w=$fileinfo[0];
        $src_h=$fileinfo[1];
    }else{
        die('文件不是真实图片');
    }
    //设置最大的宽高1000,695
    $dst_w = 450;
    $dst_h = 300;
    $ratio_orig = $src_w/$src_h;
    
    if ($dst_w/$dst_h > $ratio_orig) {
        $dst_w = $dst_h*$ratio_orig;
    } else {
        $dst_h = $dst_w/$ratio_orig;
    }
    //创建原画布资源
    $src_image = imagecreatefromjpeg($filename);
    $dst_image = imagecreatetruecolor($dst_w,$dst_h);
    //缩略图
    imagecopyresampled($dst_image,$src_image,
                       0,0,0,0,
                        $dst_w,$dst_h,$src_w,$src_h);
    imagejpeg($dst_image,'../Public/Image/bl.jpg');
    imagedestroy($dst_image);
    imagedestroy($src_image);


    查看全部
  • 上一节

    <?php

    /**

     * 为图片生成缩略图

     */

    //定义要操作图片的文件

    $filename = '../Public/Image/18.jpg';

    //得到图片的信息

    $fileinfo = getimagesize($filename);//返回值是数组

    //得到原始图像的宽高

    $src_w=$fileinfo[0];

    $src_h=$fileinfo[1];

    //通过图片文件,创建画布资源

    $src_image = imagecreatefromjpeg($filename);

    //var_dump($src_image);

    //exit();

    //创建100*100的缩略图——目标的宽高

    $dst_w = 100;

    $dst_h = 100;

    //通过目标的宽高,可以创建目标画布资源

    $dst_image = imagecreatetruecolor($dst_w,$dst_h);

    imagecopyresampled($dst_image ,  $src_image ,

                       0 , 0 , 0, 0 ,

                       $dst_w ,  $dst_h ,  $src_w , $src_h );

    imagejpeg($dst_image,'../Public/Image/thumb_100.jpg');

    imagedestroy($dst_image);

    imagedestroy($src_image);

    //var_dump($width,$height) ;

    //exit();


    查看全部
  • image_type_to_extension()

    image_type_to_mime_type()

    查看全部
  • 图片信息的

    查看全部
  • 验证码的刷新功能

    查看全部
  • GD库操作步骤

    查看全部
    0 采集 收起 来源:GD库操作流程

    2018-06-30

  • 查看某个扩展库是否被开启

    https://img1.sycdn.imooc.com//5b18864f00010f8d03790229.jpg

    查看全部
  • 图像操作函数:imagecreatefromjpeg()

    查看全部
  • 图像操作:函数getimagesize()

    查看全部
  • 图像操作的函数imagecopyrsampled

    查看全部
  • PHP

    图像操作

    查看全部
  • php image 

    查看全部
  • php gd image

    查看全部
首页上一页1234567下一页尾页

举报

0/150
提交
取消
课程须知
1、对PHP基础知识已经掌握。 2、掌握面向对象基础,类库的封装
老师告诉你能学到什么?
1、GD库中常用API的使用 2、通过GD库完成图像的常用操作 3、图像相关类库的使用

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!