日常整理PHP中简单的图形处理(经典)_PHP
1.加载GD库
GD库是一个开放的动态创建图像、源代码公开的函数库,可以从官方网站http://www.boutell.com/gd处下载。目前,GD库支持GIF、PNG、JPEG、WBMP和XBM等多种图像格式,用于对图像的处理。
GD库在PHP 5中是默认安装的,但要激活GD库,必须修改php.ini文件。将该文件中的“;extension=php_gd2.dll”选项前的分号“;”删除,保存修改后的文件并重新启动Apache服务器即可生效。
2.创建一个简单的图像
使用GD2函数库可以实现各种图形图像的处理。创建画布是使用GD2函数库来创建图像的第一步,无论创建什么样的图像,首先都需要创建一个画布,其他操作都将在这个画布上完成。在GD2函数库中创建画布,可以通过imagecreate()函数实现。
使用imagecreate()函数创建一个宽度为200像素,高度为60像素的画布,并设置画布颜色RGB(225,66,159),最后输出一个GIF格式的图像,代码如下:
<?php $im = imagecreate(200,60); //创建一个画布 $white = imagecolorallocate($im, 225,66,159); //设置画布的背景颜色为浅绿色 imagegif($im); //输出图像 ?>
3.使用GD2函数在照片上添加文字
PHP中的GD库支持中文,但必须要以UTF-8格式的参数来进行传递,如果使用imageString()函数直接绘制中文字符串就会显示乱码,这是因为GD2对中文只能接收UTF-8编码格式,并且默认使用英文字体,所以要输出中文字符串,必须对中文字符串进行转码,并设置中文字符使用的字体。否则,输出的只能是乱码。
使用imageTTFText()函数将文字“这是一个测试”输出到图像中,代码如下:
<?php header("content-type:image/jpeg"); //定义输出为图像类型 $im=imagecreatefromjpeg("images/photo.jpg"); //载入照片 $textcolor=imagecolorallocate($im,56,73,136);//设置字体颜色为蓝色,值为RGB颜色值 $fnt="c:/windows/fonts/simhei.ttf"; //定义字体 $motto=iconv("gb2312","utf-8","这是一个测试"); //定义输出字体串 imageTTFText($im,220,0,480,340,$textcolor,$fnt,$motto); //写TTF文字到图中 imagejpeg($im); //建立JPEG图形 imagedestroy($im); //结束图形,释放内存空间 ?>
4.PHP生成验证码
创建一个checks.php文件在文件中使用GD2函数创建一个4位的验证码,并将生成的验证码保存到session中:
<?php session_start(); header("content-type:image/png"); //设置创建图像的格式 $image_width=70; //设置图像宽度 $image_height=18; //设置图像高度 srand(microtime()*100000); //设置随机数的种子 for($i=0;$i<4;$i++){ //循环输出一个4位的随机数 $new_number.=dechex(rand(0,15)); } $_SESSION[check_checks]=$new_number; //将获取的随机数验证码写入到SESSION变量中 $num_image=imagecreate($image_width,$image_height); //创建一个画布 imagecolorallocate($num_image,255,255,255); //设置画布的颜色 for($i=0;$i<strlen($_SESSION[check_checks]);$i++){ //循环读取SESSION变量中的验证码 $font=mt_rand(3,5); //设置随机的字体 $x=mt_rand(1,8)+$image_width*$i/4; //设置随机字符所在位置的X坐标 $y=mt_rand(1,$image_height/4); //设置随机字符所在位置的Y坐标 $color=imagecolorallocate($num_image,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200)); //设置字符的颜色 imagestring($num_image,$font,$x,$y,$_SESSION[check_checks][$i],$color); //水平输出字符 } imagepng($num_image); //生成PNG格式的图像 imagedestroy($num_image); //释放图像资源 ?>
创建一个用户登录的表单并调用checks.php在表单中输出图像的内容:
<?php session_start(); if($_POST["Submit"]!=""){ $checks=$_POST["checks"]; if($checks==""){ echo "<script> alert('验证码不能为空');window.location.href='index.php';</script>"; } if($checks==$_SESSION[check_checks]){ echo "<script> alert('用户登录成功!');window.location.href='index.php';</script>"; }else{ echo "<script> alert('您输入的验证码不正确!');window.location.href='index.php';</script>"; } } ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312"> <title>rand函数的应用</title> <style type="text/css"> <!-- .STYLE1 { font-size: 12px; color: #FFFFFF; font-weight: bold; } .style2 {font-weight: bold; font-size: 12px;} --> </style> </head> <body> <form name="form" method="post" action=""> <table width="1003" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="168" height="169" background="images/index_01.gif"> </td> <td width="685" background="images/index_02.gif"> </td> <td width="150" background="images/index_03.gif"> </td> </tr> <tr> <td width="168" height="311" background="images/index_04.gif"> </td> <td background="images/index_05.gif"><table width="675" height="169" border="0" cellpadding="0" cellspacing="0"> <tr> <td height="43" align="center" valign="baseline"> </td> <td align="center" valign="middle"> </td> <td align="center" valign="baseline"> </td> </tr> <tr> <td width="382" height="24" align="center" valign="baseline"> </td> <td width="207" height="24" valign="middle"><span class="style2">用户名</span><span class="STYLE1"> <input name="txt_user" id="txt_user" style="height:20px " size="10"> </span></td> <td width="86" height="24" align="center" valign="baseline"> </td> </tr> <tr> <td height="24" align="center" valign="baseline"> </td> <td height="24" valign="middle"><span class="style2">密码</span><span class="STYLE1"> <input name="txt_pwd" type="password" id="txt_pwd" style="FONT-SIZE: 9pt; height:20px" size="10"> </span></td> <td height="24" align="center" valign="baseline"> </td> </tr> <tr> <td height="24" align="center" valign="baseline"> </td> <td height="24" valign="middle"><span class="style2">验证码</span><span class="STYLE1"> <input name="checks" size="6" style="height:20px "> <img src="/static/imghw/default1.png" data-src="checks.php" class="lazy" style="max-width:90%" style="max-width:90%" border="0" align="bottom" alt="日常整理PHP中简单的图形处理(经典)_PHP" ></span> </td> <td height="24" align="center" valign="baseline"> </td> </tr> <tr> <td height="40" align="center" valign="baseline"> </td> <td align="center" valign="baseline"> <input type="submit" name="Submit" value="登录"></td> <td align="center" valign="baseline"> </td> </tr> </table></td> <td background="images/index_06.gif"> </td> </tr> <tr> <td height="100"> </td> <td> </td> <td> </td> </tr> </table> </form> </body> </html>
以上内容是小编给大家分享的有关php中简单的图形处理,希望大家喜欢。

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











종종 키워드와 추적 매개 변수로 혼란스러워하는 긴 URL은 방문자를 방해 할 수 있습니다. URL 단축 스크립트는 솔루션을 제공하여 소셜 미디어 및 기타 플랫폼에 이상적인 간결한 링크를 만듭니다. 이 스크립트는 개별 웹 사이트 a에 유용합니다

Instagram은 2012 년 Facebook에서 유명한 인수에 이어 타사 사용을 위해 두 개의 API 세트를 채택했습니다. Instagram Graph API 및 Instagram Basic Display API입니다. 개발자는

Laravel은 직관적 인 플래시 방법을 사용하여 임시 세션 데이터 처리를 단순화합니다. 응용 프로그램에 간단한 메시지, 경고 또는 알림을 표시하는 데 적합합니다. 데이터는 기본적으로 후속 요청에만 지속됩니다. $ 요청-

이것은 Laravel 백엔드가있는 React Application을 구축하는 데있어 시리즈의 두 번째이자 마지막 부분입니다. 이 시리즈의 첫 번째 부분에서는 기본 제품 목록 응용 프로그램을 위해 Laravel을 사용하여 편안한 API를 만들었습니다. 이 튜토리얼에서는 Dev가 될 것입니다

Laravel은 간결한 HTTP 응답 시뮬레이션 구문을 제공하여 HTTP 상호 작용 테스트를 단순화합니다. 이 접근법은 테스트 시뮬레이션을보다 직관적으로 만들면서 코드 중복성을 크게 줄입니다. 기본 구현은 다양한 응답 유형 단축키를 제공합니다. Illuminate \ support \ Facades \ http를 사용하십시오. http :: 가짜 ([ 'google.com'=> 'Hello World', 'github.com'=> [ 'foo'=> 'bar'], 'forge.laravel.com'=>

PHP 클라이언트 URL (CURL) 확장자는 개발자를위한 강력한 도구이며 원격 서버 및 REST API와의 원활한 상호 작용을 가능하게합니다. PHP CURL은 존경받는 다중 프로모토콜 파일 전송 라이브러리 인 Libcurl을 활용하여 효율적인 execu를 용이하게합니다.

고객의 가장 긴급한 문제에 실시간 인스턴트 솔루션을 제공하고 싶습니까? 라이브 채팅을 통해 고객과 실시간 대화를 나누고 문제를 즉시 해결할 수 있습니다. 그것은 당신이 당신의 관습에 더 빠른 서비스를 제공 할 수 있도록합니다.

2025 PHP Landscape Survey는 현재 PHP 개발 동향을 조사합니다. 개발자와 비즈니스에 대한 통찰력을 제공하는 프레임 워크 사용, 배포 방법 및 과제를 탐색합니다. 이 조사는 현대 PHP Versio의 성장을 예상합니다
