美文网首页
图像处理

图像处理

作者: 博行天下 | 来源:发表于2017-04-01 01:03 被阅读0次

    php扩展库:C:\wamp\bin\php\php5.3.10\ext

    <?php
    /*
    创建画布
    参数1:画布宽度
    参数2:画布高度
    返回值:图像资源类型
    */
    $image = imagecreatetruecolor(500, 500);
    
    /*
    创建颜色
    参数1:图像资源
    参数234:红绿蓝三种颜色   0-255  0x00-0xff
    */
    $red = imagecolorallocate($image, 255, 0, 0);
    $green = imagecolorallocate($image, 0, 255, 0);
    $blue = imagecolorallocate($image, 0, 0, 255);
    $pink = imagecolorallocate($image, 0xff, 0xc0, 0xcb);
    $yellow = imagecolorallocate($image, 255, 255, 0); 
    $black = imagecolorallocate($image, 0, 0, 0);
    
    /*
    给画布填充颜色
    */
    //imagefill($image, 0, 0, $red);
    imagefilledrectangle($image, 0, 0, 500, 500, $pink);
    
    /*
    通过图像处理函数画图形
    */
    imageline($image, 0, 0, 500, 500, $yellow);
    
    /*
    画矩形
    */
    imagerectangle($image, 50, 50, 150, 150, $blue);
    imagerectangle($image, 350, 50, 450, 150, $blue);
    
    /*
    画多边形
    */
    imagepolygon($image, [250, 150, 150, 250, 350, 250], 3, $red);
    
    /*
    画椭圆
    */
    imageellipse($image, 250, 350, 200, 50, $green);
    imagefilledellipse($image, 100, 100, 30, 30, $black);
    
    /*
    画弧线
    角度为度数,方向为顺时针,0度位于3点钟方向
    */
    
    imagearc($image, 250, 250, 200, 200, -90, 90, $red);
    
    /*
    画字符串
    */
    imagestring($image, 5, 50, 200, '我爱 baby', $black);
    imagechar($image, 5, 100, 300, 'c', $black);
    
    /*
    画中文字符
    */
    imagettftext($image, 50, 10, 0, 100, $red, 'STXINGKA.TTF', '我爱你中国');
    
    /*
    告知MIME类型
    */
    header('content-type:image/png');
    
    /*
    输出或者保存
    参数1:图像资源
    参数2:如果不传递,代表输出到浏览器,如果传递,要传递一个文件路径,将该图像保存到该文件中
    */
    imagepng($image);
    
    /*
    销毁图像资源
    */
    imagedestroy($image);
    

    1、图像应用
    2、基本概念
    MIME:多用途互联网邮件扩展类型,主要用来在邮件传输和http协议中指定文件类型
    图片类型
    比如常见的MIME类型
    html: .html text/html
    png: .png image/png
    jpg、jpeg image/jpeg
    gif image/gif

    3、gd库 php扩展
    配置文件 php.ini 中通过 extension = xxx.dll 打开或者关闭扩展库
    在安装目录下 wamp64=>bin=>php7.0=>ext 存放的所有的扩展库
    4、六脉神剑
    1、创建画布(就是一个图像资源)
    2、创建颜色
    3、通过图像处理函数画图
    4、告知浏览器文件MIME类型
    5、输出到浏览器或者保存到本地
    6、销毁图像资源

    5、相关函数
    创建图像资源函数:
    imagecreate(推荐使用创建真彩色函数)
    imagecreatetruecolor

    imagecreatefromjpeg
    imagecreatefromgif
    imagecreatefromwbmp
    imagecreatefrompng
    

    创建颜色函数
    imagecolorallocate

    画图形函数
    imagefilledrectangle :画一个矩形并且填充颜色
    imagesetpixel :画一个像素点
    imageline
    imagerectangle
    imagepolygon
    imageellipse
    imagearc

    下面的都是上面的填充版本
    imagefilledrectangle
    imagefilledpolygon
    imagefilledellipse
    imagefilledarc
    
    imagerotate:旋转图片
    imagestring :不能写中文
    imagechar:画一个字符
    imagettftext:
    

    告知浏览器MIME类型
    header('Content-Type:image/png');

    输出保存图片
    imagepng($img,['path'])
    imagejpeg
    imagegif
    销毁图像资源
    imagedestroy
    获取图片的宽度和高度
    list($width, $height) = getimagesize(filename);

    /*
    imagecopy
    imagecopymerge 带透明度的拷贝
    imagecopyresampled 重采样进行拷贝
    */
    //imagecopymerge($dst, $src, 370, 677, 112, 80, 200, 85, 50);
    imagecopyresampled($dst, $src, 370, 677, 112, 80, 200, 100, 200, 85);

    相关文章

      网友评论

          本文标题:图像处理

          本文链接:https://www.haomeiwen.com/subject/djfbottx.html