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

yipeiwu_com5年前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_NETWORK_GETADDRESSES: GETADDRINFO FAILED问题解决办法

在做FTP资料采集的时候,需要用到一个PHP函数ftp_connect,这个函数是建立一个新的 FTP 连接,如果成功返回一个连接标识,失败则返回 FALSE.ftp_connect()...

PHP的伪随机数与真随机数详解

PHP的伪随机数与真随机数详解

首先需要声明的是,计算机不会产生绝对随机的随机数,计算机只能产生“伪随机数”。其实绝对随机的随机数只是一种理想的随机数,即使计算机怎样发展,它也不会产生一串绝对随机的随机数。计算机只能生...

php通用防注入程序 推荐

复制代码 代码如下: function jk1986_checksql() { $bad_str = "and|select|update|'|delete|insert|*"; $ba...

PHP 伪静态技术原理以及突破原理实现介绍

先说实现方法: inj.php: 复制代码 代码如下: <?php set_time_limit(10); $id=$_GET["id"]; $id=str_replace(" "...