php使用GD2绘制几何图形示例


Posted in PHP onFebruary 15, 2017

本文实例讲述了php使用GD2绘制几何图形的方法。分享给大家供大家参考,具体如下:

使用GD2函数不仅可以绘制线条图形,而且可以绘制填充图形,如填充圆形,填充矩形等。下面对GD2中常用的填充图形的绘制方法进行介绍。

bool imagefill( resource image, int x, int y, int color )

imagefill()函数在image图像的坐标( x, y ) (图像的左上角为(0,0))处用color颜色执行区域填充(即与(x,y)点颜色相同切相邻的点都会被填充)。

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

imagefilledarc() 在 image 所代表的图像中以 cx,cy(图像左上角为 0, 0)画一椭圆弧。成功时返回 TRUE, 或者在失败时返回 FALSE.w 和 h 分别指定了椭圆的宽和高,s 和 e 参数以角度指定了起始和结束点。style 可以是下列值按位或(OR)后的值:

IMG_ARC_PIE
IMG_ARC_CHORD
IMG_ARC_NOFILL
IMG_ARC_EDGED

IMG_ARC_PIE 和 IMG_ARC_CHORD 是互斥的;IMG_ARC_CHORD 只是用直线连接了起始和结束点,IMG_ARC_PIE 则产生圆形边界(如果两个都用,IMG_ARC_CHORD生效)。IMG_ARC_NOFILL 指明弧或弦只有轮廓,不填充。IMG_ARC_EDGED 指明用直线将起始和结束点与中心点相连,和 IMG_ARC_NOFILL 一起使用是画饼状图轮廓的好方法(而不用填充)。

bool imagefilledellipse ( resource image , int cx , int cy , int w , int h , int color )

imagefilledellipse() 在 image 所代表的图像中以 cx,cy(图像左上角为 0, 0)为中心画一个椭圆。w 和 h 分别指定了椭圆的宽和高。椭圆用 color 颜色填充。成功时返回 TRUE, 或者在失败时返回 FALSE.

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

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

例如:应用如上函数,绘制填充圆形和填充正方形,代码如下

<?php
  header("Content-type: image/png");//将图像输出到浏览器
  $img = imagecreate(400, 200);//创建一个400X200的画布
  $bg = imagecolorallocate($img, 0, 0, 255);//设置背景颜色
  $white = imagecolorallocate($img, 255, 255 ,255);//设置填充颜色
  imagefilledellipse($img, 100, 100, 150, 150, $white);//绘制填充圆形
  imagefilledrectangle($img, 200, 50, 300, 150, $white);//绘制填充正方形
  imagepng($img);//以png格式输出图像
  imagedestroy($img);//释放资源

运行结果如下所示

php使用GD2绘制几何图形示例

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

PHP 相关文章推荐
提升PHP执行速度全攻略
Oct 09 PHP
PHPMailer 中文使用说明小结
Jan 22 PHP
PHP 小心urldecode引发的SQL注入漏洞
Oct 27 PHP
php判断ip黑名单程序代码实例
Feb 24 PHP
php中unserialize返回false的解决方法
Sep 22 PHP
PHP文件缓存类示例分享
Jan 30 PHP
php实现判断访问来路是否为搜索引擎机器人的方法
Apr 15 PHP
php json相关函数用法示例
Mar 28 PHP
Yii框架批量插入数据扩展类的简单实现方法
May 23 PHP
yii 2.0中表单小部件的使用方法示例
May 23 PHP
解决laravel id非自增 模型取回为0 的问题
Oct 11 PHP
如何用PHP websocket实现网页实时聊天
May 26 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
Yii2 hasOne(), hasMany() 实现三表关联的方法(两种)
Feb 15 #PHP
You might like
PHP--用万网的接口实现域名查询功能
2012/12/13 PHP
smarty简单分页的实现方法
2014/10/27 PHP
php使用变量动态创建类的对象用法示例
2017/02/06 PHP
php使用parse_str实现查询字符串解析到变量中的方法
2017/02/17 PHP
php web环境和命令行环境下查找php.ini的位置
2019/07/17 PHP
jQuery 动画弹出窗体支持多种展现方式
2010/04/29 Javascript
JavaScript 设计模式 富有表现力的Javascript(一)
2010/05/26 Javascript
JavaScript 判断浏览器是否支持SVG的代码
2013/03/21 Javascript
JavaScript禁止复制与粘贴的实现代码
2016/05/16 Javascript
vue双向绑定简要分析
2017/03/23 Javascript
关于Angular2 + node接口调试的解决方案
2017/05/28 Javascript
详解前端路由实现与react-router使用姿势
2017/08/07 Javascript
浅谈mint-ui loadmore组件注意的问题
2017/11/08 Javascript
使用JavaScript生成罗马字符的实例代码
2018/06/08 Javascript
关于微信公众号开发无法支付的问题解决
2018/12/28 Javascript
Python Requests安装与简单运用
2016/04/07 Python
详解Python中heapq模块的用法
2016/06/28 Python
Python语言实现将图片转化为html页面
2017/12/06 Python
python opencv人脸检测提取及保存方法
2018/08/03 Python
Python使用dict.fromkeys()快速生成一个字典示例
2019/04/24 Python
Python手绘可视化工具cutecharts使用实例
2019/12/05 Python
python新式类和经典类的区别实例分析
2020/03/23 Python
python实现AdaBoost算法的示例
2020/10/03 Python
使用CSS3创建动态菜单效果
2015/07/10 HTML / CSS
HTML5无刷新改变当前url的代码
2017/03/15 HTML / CSS
Book Depository亚太地区:一家领先的国际图书零售商
2019/05/05 全球购物
跟单文员的岗位职责
2013/11/14 职场文书
中秋节礼品促销方案
2014/02/02 职场文书
老师的检讨书
2014/02/23 职场文书
预备党员表决心书
2014/03/11 职场文书
销售代理协议书
2014/09/30 职场文书
老乡聚会通知
2015/04/23 职场文书
毕业设计致谢词
2015/05/14 职场文书
小学一年级班主任工作经验交流材料
2015/11/02 职场文书
学会Python数据可视化必须尝试这7个库
2021/06/16 Python
Win Server2016远程桌面如何允许多用户同时登录
2022/06/10 Servers