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

yipeiwu_com6年前PHP代码库

本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

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

相关文章

有关PHP性能优化的介绍

PHP优化对于PHP的优化主要是对php.ini中的相关主要参数进行合理调整和设置,以下我们就来看看php.ini中的一些对性能影响较大的参数应该如何设置。 # vi /etc/php....

微信公众平台开发教程①获取用户Openid及个人信息图文详解

微信公众平台开发教程①获取用户Openid及个人信息图文详解

本文实例讲述了微信公众平台开发获取用户Openid及个人信息。分享给大家供大家参考,具体如下: 前言: 初次尝试微信公众号的开发,对于学习方法的探索都是来源于网上的博客、问答,对于参差...

php验证码的制作思路和实现方法

php验证码的制作思路和实现方法

一、制作思路 由于注册的时候常常会用到注册码来防止机器恶意注册,这里我发表一个产生png图片验证码的基本图像,简单的思路分析: 1、产生一张png的图片 2、为图片设置背景色 3、设置...

PHP实现逐行删除文件右侧空格的方法 原创

本文实例讲述了PHP实现逐行删除文件右侧空格的方法。分享给大家供大家参考,具体如下: 在编辑整理代码的过程中发现网上的一些代码经常会有不少的右侧空格,偶尔会影响到代码的排版与阅读,所以写...

关于php几种字符串连接的效率比较(详解)

php大致有三种字符串连接: 1、直接用.来进行连接。 2、用.=进行连接。 3、先压入数组,再通过join函数连接。 下面分别对这三种方法的效率进行测试: 第一种方法代码如下: &...