php画图教程,php画图功能有什么用途

在php中,使用php画图功能,在访问php文件时可以出现我们绘制的图像;php画图功能可以应用于报表的开发、验证码的设计、图片的水印和缩略。

b2408daab302f94f130c303ced2568a0.png

在介绍php画图功能之前,我们首先需要了解一下php中的绘图坐标系:

php坐标系中,坐标原点位于左上角,以像素为单位。(推荐学习:PHP编程从入门到精通)

坐标(x,y)——第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标点y个像素。

1c48c14570701f8f5ba0eb6081d2c51c.png

特别说明:像素不是一个长度单位,而是一个密度单位。理论上,分辨率越小,一个像素所占的长度会大大一些。

php画图的基本原理和步骤

(1)创建画布

(2)绘制需要的各种图形(圆,直线,矩形,弧线,扇形...)

(3)输出图像到网页,也可以另存(可以另存为网站开发常见的几种图片格式,基于存储格式问题)

(4)销毁该图片(释放内存)

下面是画验证码的代码:<?php

//echo rand(2,9);

//echo "
".dechex(rand(1,15))."
";

session_start();

$checkCode="";

for($i=0;$i<4;$i++) {

$checkCode.=dechex(rand(1,15));

}

//讲随机验证码保存到session中

$_SESSION['myCheckCode']=$checkCode;

//创建图片,并把随机数画上去

$img=imagecreatetruecolor(110, 30);

//背景默认就是黑色

//你可以指定背景颜色

$bgcolor=imagecolorallocate($img, 0, 0, 0);

imagefill($img, 0, 0, $bgcolor);

//创建新的颜色

$white=imagecolorallocate($img, 255, 255, 255);

$blue=imagecolorallocate($img, 0, 0, 255);

$red=imagecolorallocate($img, 255, 0, 0);

$green=imagecolorallocate($img, 0, 255, 0);

//画出干扰线段

for($i=0;$i<20;$i++) {

//更好的方法是颜色随机

imageline($img, rand(0,110), rand(0,30), rand(0,110), rand(0,30),

imagecolorallocate($img, rand(0,255), rand(0,255), rand(0,255)));

}

//画出噪点,自己画

//for($i=0;$i<10;$i++)

//把四个随机值画上去

imagestring($img, rand(1,5), rand(2,80), rand(2,10), $checkCode, $white);

//如果要使用中文

//array imagefttext(string $font_file, string $text [,array $extrainfo)

//imagettftext($img,15,10,20,25,$white,"STXINWET.TTF","北京你好");

//输出

header("content-type: image/png");

imagepng($img);

?>

用于登录界面(这里只提供部分代码,但是不影响理解,可删除无关内容,直接使用)

用户id"/>
密 码
验证码

checkCode.php

是否保存用户id
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值