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 相关文章推荐
php class中public,private,protected的区别以及实例分析
Jun 18 PHP
浅析php过滤html字符串,防止SQL注入的方法
Jul 02 PHP
PHP计算2点经纬度之间的距离代码
Aug 12 PHP
php多文件上传下载示例分享
Feb 20 PHP
php生成xml时添加CDATA标签的方法
Oct 17 PHP
PHP的命令行命令使用指南
Aug 18 PHP
详解Window7 下开发php扩展
Dec 31 PHP
初识ThinkPHP控制器
Apr 07 PHP
PHP学习笔记之php文件操作
Jun 03 PHP
php获取当前月与上个月月初及月末时间戳的方法
Dec 05 PHP
PHP设计模式之单例模式原理与实现方法分析
Apr 25 PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
Oct 15 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使用sql数据库 获取字段问题介绍
2013/08/12 PHP
将php数组输出html表格的方法
2014/02/24 PHP
php字符串的替换,分割和连接方法
2016/05/23 PHP
PHP实现支持加盐的图片加密解密
2016/09/09 PHP
如何在PHP中读写文件
2020/09/07 PHP
图片自动缩小 点击放大
2008/07/07 Javascript
基于jquery的无刷新分页技术
2011/06/11 Javascript
基于jquery的文本框与autocomplete结合使用(asp.net+json)
2012/05/30 Javascript
javascript得到当前页的来路即前一页地址的方法
2014/02/18 Javascript
JavaScript中使用arguments获得函数传参个数实例
2014/08/27 Javascript
9款2014最热门jQuery实用特效推荐
2014/12/07 Javascript
JS实现同一个网页布局滑动门和TAB选项卡实例
2015/09/23 Javascript
javascript实现动态统计图开发实例
2015/11/21 Javascript
AngularJS 实现弹性盒子布局的方法
2016/08/30 Javascript
AngularJS实现ajax请求的方法
2016/11/22 Javascript
Bootstrap3 datetimepicker控件使用实例
2016/12/13 Javascript
自制简易打赏功能的实例
2017/09/02 Javascript
浅谈vue2 单页面如何设置网页title
2017/11/08 Javascript
vue 组件使用中的一些细节点
2018/04/25 Javascript
vue使用微信JS-SDK实现分享功能
2019/08/23 Javascript
node.js express捕获全局异常的三种方法实例分析
2019/12/27 Javascript
JavaScript实现字符串与HTML格式相互转换
2020/03/17 Javascript
详解elementUI中input框无法输入的问题
2020/04/27 Javascript
Javascript文本框脚本实现方法解析
2020/10/30 Javascript
[01:17]辉夜杯战队访谈宣传片—EHOME
2015/12/25 DOTA
[01:07:13]TNC vs Pain 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
使用Django的模版来配合字符串翻译工作
2015/07/27 Python
关于Django外键赋值问题详解
2017/08/13 Python
python实现多线程网页下载器
2018/04/15 Python
python队列原理及实现方法示例
2019/11/27 Python
Pycharm中切换pytorch的环境和配置的教程详解
2020/03/13 Python
Python新手如何理解循环加载模块
2020/05/29 Python
使用Python快速打开一个百万行级别的超大Excel文件的方法
2021/03/02 Python
Linux开机引导的步骤是什么
2015/10/19 面试题
第二批党的群众路线教育实践活动总结报告
2014/10/30 职场文书
2019毕业典礼主持词!
2019/07/05 职场文书