首页 > php图像处理 > php生成图片与验证码图片生成原理

php生成图片与验证码图片生成原理

这款php生成图片与验证码图片生成原理代码,是由php gd库来支持,如果你的系统不能创建图片就把gd.dll前面的;去再,重起apache,如果是iis重起iis就OK了.创建图片后记得用ImageDestroy 清空内存.

php生成图片与验证码图片实例代码如下:

$w?$RESIZEWIDTH=$w:$RESIZEWIDTH=400;// 生成图片的宽度 
$h?$RESIZEHEIGHT=$h:$RESIZEHEIGHT=400;// 生成图片的高度
<?php
function ResizeImage($im, $maxwidth, $maxheight, $name) {
    $width = imagesx($im);
    $height = imagesy($im);
    if (($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight)) {
        if ($maxwidth && $width > $maxwidth) {
            $widthratio = $maxwidth / $width;
            $RESIZEWIDTH = true; //www.phprm.com
            
        }
        if ($maxheight && $height > $maxheight) {
            $heightratio = $maxheight / $height;
            $RESIZEHEIGHT = true;
        }
        if ($RESIZEWIDTH && $RESIZEHEIGHT) {
            if ($widthratio < $heightratio) {
                $ratio = $widthratio;
            } else {
                $ratio = $heightratio;
            }
        } elseif ($RESIZEWIDTH) {
            $ratio = $widthratio;
        } elseif ($RESIZEHEIGHT) {
            $ratio = $heightratio;
        }
        $newwidth = $width * $ratio;
        $newheight = $height * $ratio;
        if (function_exists("imagecopyresampled")) {
            $newim = imagecreatetruecolor($newwidth, $newheight);
            imagecopyresampled($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
        } else {
            $newim = imagecreate($newwidth, $newheight);
            imagecopyresized($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
        }
        ImageJpeg($newim, $name);
        ImageDestroy($newim);
    } else {
        ImageJpeg($im, $name);
    }
}
if ($_FILES['uploadfile']['size']) {
    if ($_FILES['uploadfile']['type'] == "image/pjpeg") {
        $im = imagecreatefromjpeg($_FILES['uploadfile']['tmp_name']);
    } elseif ($_FILES['uploadfile']['type'] == "image/x-png") {
        $im = imagecreatefrompng($_FILES['uploadfile']['tmp_name']);
    } elseif ($_FILES['uploadfile']['type'] == "image/gif") {
        $im = imagecreatefromgif($_FILES['uploadfile']['tmp_name']);
    }
    if ($im) {
        if (file_exists('bbs.jpg')) {
            unlink('www.phprm.com.jpg');
        }
        ResizeImage($im, $RESIZEWIDTH, $RESIZEHEIGHT, 'bbs.jpg');
        ImageDestroy($im);
    }
}
//$uploadfile="bbs.jpg";


文章链接:http://www.phprm.com/tuxiang/fs4491.html

随便收藏,请保留本文地址!

标签:php验证码 php生成图片 php原理

相关文章

发表留言