zoukankan      html  css  js  c++  java
  • GD库基础

    一、什么是GD库?

      一套操作动态图像的函数库

    二、为什么使用GD库?

      因为在PHP中不仅要处理文本数据,也需要处理图像数据

    三、什么时候使用GD库?

      验证码、图像的裁剪、图像的缩略、图像的水印、股票信息图、统计图

    四、安装GD库

      ①检测php/ext目录下是否拥有php_gd2.dll函数库文件

      ②须在php.ini文件中开启扩展包:extension=php_gd2.dll

      ③检测是否开启成功:phpinfo();

    五、如何操作GD库(PHP手册内GD库操作)

      1、创建真彩色画布(创建一块操作图像的内存资源)

        $img=imagecreatetruecolor($width,$height);

      2、分配颜色

        $red=imagecolorallocate($img,255,0,0);

        $green=imagecolorallocate($img,0,255,0);

        $blue=imagecolorallocate($img,0,0,255);

        $white=imagecolorallocate($img,255,255,255);

        $black=imagecolorallocate($img,0,0,0);

        $color=imagecolorallocate($img,R,G,B);

        $color_alpha=imagecolorallocatealpha($img,R,G,B,0~127);

      3、操作图像

        //画一个矩形并填充

        imagefilledrectangle($img,x1,y1,x2,y2,$color);

          x1、y1:左上角坐标

          x2、y2:右下角坐标

        //画一条线段

        imageline($img,x1,y1,x2,y2,$color);

          x1、y1:左端点坐标

          x2、y2:右端点坐标

        //画一个圆形并填充

        imagefilledellipse($img,cx,cy,$width,$height,$color);

          cx:圆心x坐标

          cy:圆心y坐标

          $width:圆的宽

          $height:圆的高

        //画一个多边形并填充

        imagefilledpolygon($img,$points,$num_points,$color);

          $points:按顺序包含有多边形各顶点x和y坐标的数组

            $points=array(x1,y1,x2,y2,x3,y3,x4,y4);

          $num_points:多边形顶点的总数(>3)

        //向图像写入文本

        imagettftext($img,$size,$angle,x,y,$color,$fontfile,$text);

          $size:字体大小

          $angle:文本从左向右的角度,逆时针旋转值

          x、y:定义文本第一个字符的基本点

          $fontfile:字体文件(.ttf)所在的路径

      4、通知浏览器以图像的形式展现

        header("content-type:image/png");  (图像格式可自定义)

        header("content-type:image/gif");

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

        header("content-type:image/wbmp");

      5、显示图像

        imagepng($img);

        imagegif($img);

        imagejpeg($img);

        imagewbmp($img);

      6、回收资源

        imagedestroy($img);

  • 相关阅读:
    mysql ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: YES)
    mysql修改root密码和设置权限
    Navicat Premium 12破解版激活
    获取/设置光标位置
    Go开发工程师
    npm包大全
    war3辅助代码及运行方式
    6.页面绘制-帖子列表页和前端路由
    5.页面绘制-主题列表页(使用ColorUI、uni-app官方组件)
    4.页面绘制-脚本页面和个人中心页面
  • 原文地址:https://www.cnblogs.com/zhouwanqiu/p/9299237.html
Copyright © 2011-2022 走看看