Tutorials

Image_resize

Foto verkleinen of vergrooten met gd

Pagina 1

Hoe werkt het

Ik heb al veel op het forum gezien hoe je met php een plaatje kunt vergrooten of verkleinen. Ik heb vlug iets gemaakt dat zou moeten werken in de meeste gevallen

Hoe werkt het:
resize([Bestands naam foto], [naam aangepast foto], [breedte], [hooghte], [jpg, gif, ..])

Eerst geef je de orginele foto op: img.jpg
Dan hoe hij de hervormde foto noemd: img.jpg (mag het zelfde zijn)
De breedte in pixels naar wat hij het moet resizen
De hooghte in pixels naar wat hij het moet resizen
Wat voor type bestand; jpg, gif, png of bmp. laat dit maar leeg hij detecteerd het wel zelf.

Dus dat kan voorbeeld zijn:

<?php
resize('img.jpg', 'img.jpg', 1024, 768);
?>

Het script

Dit is geen standaard php functie dus dit moet er bij:


<?php
function resize($filename, $dest, $width, $height, $type=''){
if(@imagecreatefromgif($filename)){
$img=imagecreatefromgif($filename);
$type_r='gif';
}
elseif(@imagecreatefromjpeg($filename)){
$img=imagecreatefromjpeg($filename);
$type_r='jpg';
}
elseif(@imagecreatefrompng($filename)){
$img=imagecreatefrompng($filename);
$type_r='png';
}
elseif(@imagecreatefromwbmp($filename)){
$img=imagecreatefromwbmp($filename);
$type_r='bmp';
}
else{
return 'Cannot open file';
}
$type=($type=='')?$type_r:'';
$img_n=imagecreatetruecolor ($width, $height);
imagecopyresampled($img_n, $img, 0, 0, 0, 0, $width, $height, imagesx($img), imagesy($img));
if($type=='gif'){
imagegif($img_n, $dest);
}
elseif($type=='jpg'){
imagejpeg($img_n, $dest);
}
elseif($type=='png'){
imagepng($img_n, $dest);
}
elseif($type=='bmp'){
imagewbmp($img_n, $dest);
}
Return true;
}
?>

Reacties

0
Nog geen reacties.