php使用gd2绘制基本图形示例(直线、圆、正方形)


Posted in PHP onFebruary 15, 2017

本文实例讲述了php使用gd2绘制基本图形。分享给大家供大家参考,具体如下:

应用GD2函数可以绘制的图形有多种,最基本的图形包括条、圆、方形等。无论开发人员绘制多么复杂的图形,都是在这些最基本的图形的基础上进行深化的,只有掌握了最基本的图形的绘制方法,才能绘制出各种具有独特风格的图形。

在GD2中可以分别应用imageline()函数、imagearc()函数和imagerectangle()函数绘制直线,圆形和方法。

下面将介绍这些函数的使用方法:

bool imageline( resource image, int x1, int y1, int x2, int y2, int color )

imageline()函数用color颜色在图像image中从坐标(x1,y1)到(x2,y2)(图像左上角为(0,0))绘制一条线段。

bool imagearc( resource image, int cx, int cy, int w, int h, int s, int e, int color)

image : 表示图像的handle
cx,cy 原点坐标(0,0)为图片的左上角,参数cx,cy为椭圆圆心坐标
w,h分别为水平轴长和垂直轴长
s,e分别为起始角与结束角
color为弧线的颜色

bool imagerectangle( resource image, int x1, int y1, int x2, int y2, int color)

imagerectangle()函数以color颜色在image图像中绘制一个矩形,其左上角坐标为( x1,y1),右下角坐标为( x2, y2)。图像的左上角坐标为(0,0)

例如应用以上函数,分别绘制直线、正圆和正方形,并且以白色作为线条的基色,代码如下

<?php
  header("Content-type: image/png");//将图像输出到浏览器
  $img = imagecreate(560, 200);//创建一个560X200像素的图像
  $bg = imagecolorallocate($img, 0, 0, 255);//设置图像的背景颜色
  $white = imagecolorallocate($img, 255, 255, 255);//设置绘制图像的线的颜色
  imageline($img, 20, 20, 150, 180, $white);//绘制一条线
  imagearc($img, 250, 100, 150, 150, 0, 360, $white);//绘制一个圆
  imagerectangle($img, 350, 20, 500, 170, $white);//绘制一个正方形
  imagepng($img);//以PNG格式输出图像
  imagedestroy($img);//释放资源

运行结果如下:

php使用gd2绘制基本图形示例(直线、圆、正方形)

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
教你IIS6的PHP最佳配置方法
Sep 05 PHP
jq的get传参数在utf-8中乱码问题的解决php版
Jul 23 PHP
PHP投票系统防刷票判断流程分析
Feb 04 PHP
sae使用smarty模板的方法
Dec 17 PHP
使用PHP备份MYSQL数据的多种方法
Jan 15 PHP
PHP生成条形图的方法
Dec 10 PHP
Symfony模板的快捷变量用法实例
Mar 17 PHP
PHP如何将XML转成数组
Apr 04 PHP
thinkphp框架page类与bootstrap分页(美化)
Jun 25 PHP
PHP中类型转换 ,常量,系统常量,魔术常量的详解
Oct 26 PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
Jan 15 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
Feb 07 PHP
php使用GD2绘制几何图形示例
Feb 15 #PHP
php使用Jpgraph创建柱状图展示年度收支表效果示例
Feb 15 #PHP
php使用Jpgraph创建折线图效果示例
Feb 15 #PHP
php使用Jpgraph创建3D饼形图效果示例
Feb 15 #PHP
PHP反射机制原理与用法详解
Feb 15 #PHP
thinkphp Apache配置重启Apache1 restart 出错解决办法
Feb 15 #PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
Feb 15 #PHP
You might like
PHP判断IP并转跳到相应城市分站的方法
2015/03/25 PHP
PHP使用文件锁解决高并发问题示例
2018/03/29 PHP
关于JS中的闭包浅谈
2013/08/23 Javascript
js 弹出框只弹一次(二次修改之后的)
2013/11/26 Javascript
jquery.cookie() 方法的使用(读取、写入、删除)
2013/12/05 Javascript
js使用onmousemove和onmouseout获取鼠标坐标的方法
2015/03/31 Javascript
ztree获取选中节点时不能进入可视区域出现BUG如何解决
2015/12/03 Javascript
jQuery中设置form表单中action值的实现方法
2016/05/25 Javascript
nodejs简单实现操作arduino
2016/09/25 NodeJs
Vue.js路由组件vue-router使用方法详解
2016/12/02 Javascript
JS正则表达式判断有效数实例代码
2017/03/13 Javascript
关于页面刷新vuex数据消失问题解决方案
2017/07/03 Javascript
php register_shutdown_function函数详解
2017/07/23 Javascript
解决vue2.0 element-ui中el-upload的before-upload方法返回false时submit()不生效问题
2018/08/24 Javascript
一份超级详细的Vue-cli3.0使用教程【推荐】
2018/11/15 Javascript
layer 关闭指定弹出层的例子
2019/09/25 Javascript
Vue.js仿Select下拉框效果
2020/02/18 Javascript
微信小程序scroll-view点击项自动居中效果的实现
2020/03/25 Javascript
vuecli项目构建SSR服务端渲染的实现
2020/10/30 Javascript
Python对字符串实现去重操作的方法示例
2017/08/11 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
详解Python中的分组函数groupby和itertools)
2018/07/11 Python
python求最大值,不使用内置函数的实现方法
2019/07/09 Python
解决Django 在ForeignKey中出现 non-nullable field错误的问题
2019/08/06 Python
python3常用的数据清洗方法(小结)
2019/10/31 Python
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
2020/02/17 Python
python主要用于哪些方向
2020/07/05 Python
html5定制表单_动力节点Java学院整理
2017/07/11 HTML / CSS
自考生毕业自我鉴定
2013/10/10 职场文书
自主招生自荐信格式
2013/12/03 职场文书
无故旷工检讨书
2014/01/26 职场文书
优秀经理获奖感言
2014/03/04 职场文书
歌剧魅影观后感
2015/06/05 职场文书
酒店宣传语大全
2015/07/13 职场文书
Django集成富文本编辑器summernote的实现步骤
2021/05/31 Python
Elasticsearch6.2服务器升配后的bug(避坑指南)
2022/09/23 Servers