zoukankan      html  css  js  c++  java
  • PHP学习笔记(3)GD库画图

     1 <?php
     2     //加header头,不然浏览器乱码
     3     header("content-type: image/png");
     4     //创建画布资源
     5    $img = imagecreatetruecolor(500, 500);
     6    //创建颜色
     7    $green = imagecolorallocate($img, 0, 255, 0);
     8    //画椭圆
     9    imagefilledellipse($img, 200, 200, 100, 100, $green);
    10    //输出画布图像
    11    imagepng($img);
    12 ?>

     php也能画图,但是好像用的不多,HTML5里的canvas跟这个原理差不多,但是用的人应该比PHP多。不知道PHP画图现在还有没有人用,只能用来画验证码了吗?

    --------------------------------------------------------------------------------------------------------------------------------------------------

     1 <?php
     2     //加header头,不然浏览器乱码
     3     header("content-type: image/png");
     4     //创建画布资源
     5    $img = imagecreatetruecolor(500, 500);
     6    //创建颜色
     7    $green = imagecolorallocate($img, 0, 255, 0);
     8    //画椭圆
     9    imagefilledellipse($img, 200, 200, 100, 100, $green);
    10    //画多边形,points是顶点坐标数组,num_points是顶点个数,妈蛋这个画不出来五角星,只能拼出来。还不如用直线画
    11    $points = array(200,0,0,100,100,400,300,400,400,100);
    12    imagepolygon($img, $points, 5, $green);
    13    //输出画布图像
    14    imagepng($img);
    15 ?>

     --------------------------------------------------------------------------------------------------------------------------------------------------

     

     1 <?php
     2     //加header头,不然浏览器乱码
     3     header("content-type: image/png");
     4     //创建画布资源
     5    $img = imagecreatetruecolor(500, 500);
     6    //创建颜色
     7    $green = imagecolorallocate($img, 0, 255, 0);
     8    //画椭圆
     9    // imagefilledellipse($img, 200, 200, 100, 100, $green);
    10    $r = 100;//半径
    11    $degree18 = deg2rad(18);//直角三角形18度,改成弧度,一定是这里公式出了问题!
    12    $a = $r*cos($degree18);//长边长度
    13    $b = $r - $r*sin($degree18);//短边长度
    14    //五个顶点坐标
    15    $px1 = 200;
    16    $py1 = 200;
    17    $px2 = $px1+$a;
    18    $py2 = $py1+$b;
    19    $px3 = $px1+$b;
    20    $py3 = $py1+$r+$a;
    21    $px4 = $px1-$b;
    22    $py4 = $py1+$r+$a;
    23    $px5 = $px1-$a;
    24    $py5 = $py1+$b;
    25     //画多边形,points是顶点坐标数组,num_points是顶点个数,妈蛋这个画不出来五角星,只能拼出来。还不如用直线画
    26    $points = array($px1,$py1,$px2,$py2,$px3,$py3,$px4,$py4,$px5,$py5);
    27    // imagepolygon($img, $points, 5, $green);
    28    //画五条线
    29    imageline($img, $px1, $py1, $px3, $py3, $green);
    30    imageline($img, $px1, $py1, $px4, $py4, $green);
    31    imageline($img, $px2, $py2, $px4, $py4, $green);
    32    imageline($img, $px2, $py2, $px5, $py5, $green);
    33    imageline($img, $px3, $py3, $px5, $py5, $green);
    34 
    35    //输出画布图像,怎么腿这么胖!!
    36     imagepng($img);
    37    
    38 ?>

    --------------------------------------------------------------------------------------------------------------------------------------------------

  • 相关阅读:
    同余方程
    倒酒
    机器翻译
    vue 锚点定位
    解决vuex刷新页面数据丢失
    h5 input失去焦点软键盘把页面顶起
    js 监听ios手机键盘弹起和收起的事件
    js 将数组中的每一项安装奇偶重新组合成一个数组对象
    moment.js获取本周本月本年的开始日期和结束日期
    vue 所有的路由跳转加一个统一参数
  • 原文地址:https://www.cnblogs.com/Jacklovely/p/6043566.html
Copyright © 2011-2022 走看看