PHP中的画布详解

小云云
发布: 2018-03-27 15:48:36
原创
5668人浏览过

本文主要和大家分享PHP中的画布详解,PHP中的图像处理技术GD,希望能帮助到大家。

创建新画布--资源型数据(可以操作图像资源)

    imagecreate(画布宽,画布高);创建基于调色板的画布。

           ImageCreateTrueColor(画布宽,画布高);创建真彩画布。

基于图片创建画布

             ImageCreateFromFPG(图片地址);

             ImageCreateFromPNG(图片地址);

             ImageCreateFromGIF(图片地址);

立即学习PHP免费学习笔记(深入)”;

操作画布

            分配颜色:如果需要在画布上使用某个颜色,应该先将颜色分配到画布上。

            颜色标识:

                        $color=ImageColorAllocate(画布资源,R,G,B);RGB为三原色,大小为0~255;

            填充画布:

                        ImageFill(画布资源,填充位置x,填充位置y,颜色标识);填充时对于与填充点连续且颜色相同的点进行填充。

            将字符串写到画布上:

                        ImageString(画布资源,字体,位置x,位置y,字符串内容,字符颜色);

                        字体为内置字体,大小为1~5号。

                        字符颜色为前面颜色分配时所写的变量。

            得到打开的画布大小:

自由画布
自由画布

百度文库和百度网盘联合开发的AI创作工具类智能体

自由画布 73
查看详情 自由画布

                        ImageSX(画布资源);得到画布的宽。

                        ImageSY(画布资源);得到画布的高。

            得到内置字体的大小:

                        ImageFontWidth(字体号);得到内置字体的宽度。

                        ImageFontHeight(字体号);得到内置字体的高低。

输出画布         

    1.输出到图片文件。

    2.直接输出到页面。

       ImagePNG(画布资源[,文件地址]);  

        ImageJPEG(画布资源[,文件地址]);  

        ImageGIF(画布资源[,文件地址]);  

实例:验证码

<?php
header('Content-Type:image/jpg');
$chars='ABCDEFGHIJKLMNPQRSTUVWXYZ123456789';
$chars_length=strlen($chars);
$code_length=4;
$code='';
for($i=0;$i<$code_length;$i++){
	$rand_index=mt_rand(0,$chars_length-1);
	$code.=$chars[$rand_index];
}

//存储于session,用于验证。
session_start();
$_SESSION['captcha_code']=$code;


//背景图。
$bg_file='./captcha/captcha_bg'.mt_rand(1,5).'.jpg';
$img=ImageCreateFromJPEG($bg_file);
//随机分发颜色
$chars_color=mt_rand(1,2)==1?imagecolorallocate($img,0,0,0):imagecolorallocate($img,255,255,255);
//将字符串写到画布上。
$img_width=ImageSX($img);
$img_height=ImageSY($img);
$font_width=ImageFontWidth(5)*4;
$font_height=ImageFontHeight(5);
$code_width=($img_width-$font_width)/2;
$code_height=($img_height-$font_height)/2;
ImageString($img,5,$code_width,$code_height,$code,$chars_color);
ImageJPEG($img);
登录后复制


以上就是PHP中的画布详解的详细内容,更多请关注php中文网其它相关文章!

相关标签:
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号