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集成FCK的函数代码
Sep 27 PHP
PHP 生成的XML以FLASH获取为乱码终极解决
Aug 07 PHP
php中修改浏览器的User-Agent来伪装你的浏览器和操作系统
Jul 29 PHP
php遍历数组的方法分享
Mar 22 PHP
浅谈thinkphp的实例化模型
Jan 04 PHP
Zend Framework入门知识点小结
Mar 19 PHP
php 计算两个时间相差的天数、小时数、分钟数、秒数详解及实例代码
Nov 09 PHP
详解PHP5.6.30与Apache2.4.x配置
Jun 02 PHP
PHP删除数组中指定下标的元素方法
Feb 03 PHP
PHP使用pdo实现事务处理操作示例
Sep 05 PHP
PHP7 安装event扩展的实现方法
Oct 08 PHP
laravel框架模型、视图与控制器简单操作示例
Oct 10 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 获取MSN好友列表的代码(2009-05-14测试通过)
2009/09/09 PHP
php下清空字符串中的HTML标签的代码
2010/09/06 PHP
允许phpmyadmin空密码登录的配置方法
2011/05/29 PHP
PHP Class&amp;Object -- 解析PHP实现二叉树
2013/06/25 PHP
php根据某字段对多维数组进行排序的方法
2015/03/07 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
2019/11/24 PHP
php中array_fill函数的实例用法
2021/03/02 PHP
用cssText批量修改样式
2009/08/29 Javascript
javascript动态改变img的src属性图片不显示的解决方法
2010/10/20 Javascript
javascript的内存管理详解
2013/08/07 Javascript
js中split函数的使用方法说明
2013/12/26 Javascript
基于jQuery的图片不完全按比例自动缩小
2014/07/11 Javascript
javascript学习笔记(五)原型和原型链详解
2014/10/08 Javascript
浅谈JS闭包中的循环绑定处理程序
2014/11/09 Javascript
AngularJS中使用HTML5手机摄像头拍照
2016/02/22 Javascript
jQuery easyUI datagrid 增加求和统计行的实现代码
2016/06/01 Javascript
再谈javascript常见错误及解决方法
2016/09/16 Javascript
前后端如何实现登录token拦截校验详解
2018/09/03 Javascript
解决cordova+vue 项目打包成APK应用遇到的问题
2019/05/10 Javascript
vue.js实现数据库的JSON数据输出渲染到html页面功能示例
2019/08/03 Javascript
js+canvas实现简单扫雷小游戏
2021/01/22 Javascript
javascript设计模式 ? 中介者模式原理与用法实例分析
2020/04/20 Javascript
使用pycharm生成代码模板的实例
2018/05/23 Python
使用Python进行QQ批量登录的实例代码
2018/06/11 Python
python代码过长的换行方法
2018/07/19 Python
详解python中eval函数的作用
2019/10/22 Python
使用Python实现 学生学籍管理系统
2019/11/26 Python
Tkinter中复选菜单是否被选中的判断与设置方式
2020/03/04 Python
Python3 shelve对象持久存储原理详解
2020/03/23 Python
数百万免费的图形资源:Freepik
2020/09/21 全球购物
const char*, char const*, char*const的区别是什么
2014/07/09 面试题
会计实习自我鉴定
2013/12/04 职场文书
手工社团活动方案
2014/02/17 职场文书
龙门石窟导游词
2015/02/02 职场文书
库房管理员岗位职责
2015/02/12 职场文书
房地产销售助理岗位职责
2015/04/14 职场文书