Home
Backend Development
PHP Tutorial
Customizable PHP thumbnail generation program (requires GD library support)_PHP tutorial



Customizable PHP thumbnail generation program (requires GD library support)_PHP tutorial
php
Can
based on
custom made
Library
designation
support
generate
of
classic
need
The classic PHP thumbnail generation program, based on the GD library, can specify the generation path and the width and height details of the generation target. Instructions for use: In a PHP environment that supports the GD library, save the following code as resize.php for testing
Classic PHP thumbnail generation program, based on GD library, can specify the generation path and width and height details of the generation target
Usage: In a PHP environment that supports GD library, save the following code as resize .php test
Copy code The code is as follows:
$FILENAME="image_name";
// The width of the generated image
$RESIZEWIDTH=400;
// The height of the generated image
$RESIZEHEIGHT=400;
//The path to generate the image
$uploaddir="c:/winnt/temp";
function ResizeImage($im,$maxwidth,$maxheight,$name){
global $uploaddir;
$width = imagesx($im);
$height = imagesy($im);
if(($maxwidth && $width > $maxwidth) || ($maxheight && $ height > $maxheight)){
if($maxwidth && $width > $maxwidth){
$widthratio = $maxwidth/$width;
$RESIZEWIDTH=true;
}
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,$uploaddir.$name . ".jpg");
ImageDestroy ($ newim);
}else{
ImageJpeg ($im,$uploaddir.$name . ".jpg");
}
}
if ($_FILES['image']['size']){
if($_FILES['image']['type'] == "image/pjpeg"){
$im = imagecreatefromjpeg($ _FILES['image']['tmp_name']);
}elseif($_FILES['image']['type'] == "image/x-png"){
$im = imagecreatefrompng( $_FILES['image']['tmp_name']);
}elseif($_FILES['image']['type'] == "image/gif"){
$im = imagecreatefromgif($ _FILES['image']['tmp_name']);
}
if($im){
if(file_exists("$FILENAME.jpg")){
unlink("$FILENAME .jpg");
}
ResizeImage($im,$RESIZEWIDTH,$RESIZEHEIGHT,$FILENAME);
ImageDestroy ($im);
}
}
?>
body>