PHP中我们了解了那么多关于php的知识,不知道你们对封装水印函数有多少了解,我相信很大一部分人会不知道这部分知识点,那么不急本篇文章就是带领大家更深刻的去了解这个内容。
相关推荐:一分钟学会PHP中关于封装验证码
封装水印函数上:
我们先建立一个文件,然后开始先定义一个函数,然后有几个资源需要写上,紧接着默认给他一个测试,然后还有透明度,然后及时存储空间,然后我们就开始进一步的操作,具体代码如下:
打开图片:
$sourceRes = open ($source) ; var_dump ($source) ; $waterRes=open ($water) ;
//获取图片大小算出来位置
$sourceInfo=getimagesize ($source) ; $waterInfo = getimagesize ($water) ;
打开图片的函数:
function open ($path) {
依然是定义一个函数,然后我们需要去传一个路径,紧接着我们判断是否存在,
if (!file_exists ($path) ) { exit('文件不存在') ; $info=getimagesize ($path) ; //var_dump($info) ; switch ($info['mime']) ( case ' image/jpeg' : case ' image/jpg' : case ' image/pjpeg' : $res=imagecreatefromjpeg ($path) ; break; case'image/png' : $res=imagecreatefrompng ($path) ; break ; case'image/gif' : $res = imagecreatefromgif ($path) ; break; . case'image/wbmp' : case ' image/bmp' : $res=imagecreatefromwbmp ($path) ; break; } }
//算位置
switch ($position) { case1 : $x=0; $y-0; break; case 2 : $x=($sourceInfo[0] - $waterInfo[0]) / 2; $y=0; break; case 3 : $x=$sourceInfo[0] - $waterInfo[0]; $y=O; break; caso 4 : $X=0; $y = ($sourceInfo[1] - $waterInfo[]) / 2; break; case 5 : $x =($sourceInfo[0] - $waterInfo[0]), / 2; 2; $y = ($sourceInfo[1] - $waterInfo[1]) / 2; break; case 6: $x = $sourceInfo[0] - $waterInfo[0]; $y = ($sourceInfo[1] - $waterInfo[1]) / 2 break; case 7 : $x-0; $y - $sourceInfo[1] - SwaterInfo[1]; break; case 8 : $x=($sourceInfo[0] - $waterInfo[0]) / 2; $y = $sourceInfo[1] - $waterInfo[1]; break; caso 9 : $x=$sourceInfo[0] - $waterInfo[0]; $y = $sourceInfo[1] - $waterInfo[1]; break; default : $x=mt_rand(0 ,$sourceInfo[0] - $waterInfo[0]) ; $y=mt_rand(0,$sourceInfo[1] - $waterInfo[1]) ; break;
//把xy求出来的值供两张图片合并的时候使用
imagecopymerge () ;
相关学习视频分享:php视频教程
Atas ialah kandungan terperinci 一分钟学会PHP中关于封装水印函数. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!