Hey,
Weet iemand een scriptje die met GD resized, zonder dat er pixels verloren gaan?
Groet,
Erik.
Weet iemand een scriptje die met GD resized, zonder dat er pixels verloren gaan?
Groet,
Erik.
[COLOR= #0000BB]<?php[/COLOR]
[URL="http://www.php.net/ob_start"]ob_start[/URL][COLOR= #007700]();[/COLOR]
[URL="http://www.php.net/error_reporting"]error_reporting[/URL][COLOR= #007700]([/COLOR]E_ALL [COLOR= #007700]|[/COLOR] E_STRICT[COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]/**
* @author LorenzPHP
* @copyright 2009
*/
/**
* Zet alle GETS
*/[/COLOR]
[COLOR= #0000BB]$source[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$_GET[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]url[/COLOR][COLOR= #007700]];[/COLOR]
[COLOR= #0000BB]$resize[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$_GET[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]resize[/COLOR][COLOR= #007700]];[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$source[/COLOR][COLOR= #007700]) ||[/COLOR] [URL="http://www.php.net/empty"]empty[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$resize[/COLOR][COLOR= #007700]))[/COLOR] [URL="http://www.php.net/die"]die[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]"Please use the GET methode url and resize"[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]/**
* Pak headers van plaatje, zoek het content-type op en sla het op in een variabeel.
*/[/COLOR]
[COLOR= #0000BB]$get[/COLOR] [COLOR= #007700]=[/COLOR] get_headers[COLOR= #007700]([/COLOR][COLOR= #0000BB]$source[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]1[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$get[/COLOR][COLOR= #007700][[/COLOR][COLOR= #DD0000]Content-Type[/COLOR][COLOR= #007700]];[/COLOR]
[URL="http://www.php.net/header"]header[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]Content-type: $type[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]/**
* Pak hoogte en breedte en zet in variabeel
*/[/COLOR]
[COLOR= #0000BB]$imagesize[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/getimagesize"]getimagesize[/URL][COLOR= #007700]([/COLOR][COLOR= #0000BB]$source[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$height[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$imagesize[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]];[/COLOR]
[COLOR= #0000BB]$width[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$imagesize[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]];[/COLOR]
[COLOR= #FF8000]/**
* Nieuwe hoogte instellen en breedte instellen
*/[/COLOR]
[COLOR= #0000BB]$ex[/COLOR] [COLOR= #007700]=[/COLOR] [URL="http://www.php.net/explode"]explode[/URL][COLOR= #007700]([/COLOR][COLOR= #DD0000]x[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$resize[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #0000BB]$newwidth[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$ex[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]0[/COLOR][COLOR= #007700]];[/COLOR]
[COLOR= #0000BB]$newheight[/COLOR] [COLOR= #007700]=[/COLOR] [COLOR= #0000BB]$ex[/COLOR][COLOR= #007700][[/COLOR][COLOR= #0000BB]1[/COLOR][COLOR= #007700]];[/COLOR]
[COLOR= #FF8000]/**
* PHP Gezeik met al die imagecreate-functies
*/[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]image/jpeg[/COLOR] [COLOR= #007700]||[/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]image/jpg[/COLOR][COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$imagecreate[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatefromjpeg[COLOR= #007700]([/COLOR][COLOR= #0000BB]$source[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]image/png[/COLOR] [COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$imagecreate[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatefrompng[COLOR= #007700]([/COLOR][COLOR= #0000BB]$source[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]image/gif[/COLOR] [COLOR= #007700])
{[/COLOR]
[COLOR= #0000BB]$imagecreate[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatefromgif[COLOR= #007700]([/COLOR][COLOR= #0000BB]$source[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]/**
* Maak het nieuwe plaatje en zet hem op transparant
*/[/COLOR]
[COLOR= #0000BB]$newimage[/COLOR] [COLOR= #007700]=[/COLOR] imagecreatetruecolor[COLOR= #007700]([/COLOR][COLOR= #0000BB]$newwidth[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$newheight[/COLOR][COLOR= #007700]);[/COLOR]
imagealphablending[COLOR= #007700]([/COLOR][COLOR= #0000BB]$newimage[/COLOR][COLOR= #007700],[/COLOR] false[COLOR= #007700]);[/COLOR]
imagesavealpha[COLOR= #007700]([/COLOR][COLOR= #0000BB]$newimage[/COLOR][COLOR= #007700],[/COLOR]true[COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]/**
* Maak het nieuwe plaatje
*/[/COLOR]
imagecopyresampled[COLOR= #007700]([/COLOR][COLOR= #0000BB]$newimage[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$imagecreate[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]0[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$newwidth[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$newheight[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$width[/COLOR][COLOR= #007700],[/COLOR] [COLOR= #0000BB]$height[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]/**
* Zelfde zooi
*/[/COLOR]
[URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR][COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]image/jpeg[/COLOR] [COLOR= #007700]||[/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]image/jpg[/COLOR][COLOR= #007700])
{[/COLOR]
imagejpeg[COLOR= #007700]([/COLOR][COLOR= #0000BB]$newimage[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]image/png[/COLOR] [COLOR= #007700])
{[/COLOR]
imagepng[COLOR= #007700]([/COLOR][COLOR= #0000BB]$newimage[/COLOR][COLOR= #007700]);
}[/COLOR]
[URL="http://www.php.net/else"]else[/URL] [URL="http://www.php.net/if"]if[/URL] [COLOR= #007700]([/COLOR] [COLOR= #0000BB]$type[/COLOR] [COLOR= #007700]==[/COLOR] [COLOR= #DD0000]image/gif[/COLOR] [COLOR= #007700])
{[/COLOR]
imagegif[COLOR= #007700]([/COLOR][COLOR= #0000BB]$newimage[/COLOR][COLOR= #007700]);
}[/COLOR]
[COLOR= #FF8000]/**
* Buffers cleanen
*/[/COLOR]
imagedestroy[COLOR= #007700]([/COLOR][COLOR= #0000BB]$imagesize[/COLOR][COLOR= #007700]);[/COLOR]
imagedestroy[COLOR= #007700]([/COLOR][COLOR= #0000BB]$imagecreate[/COLOR][COLOR= #007700]);[/COLOR]
[COLOR= #FF8000]/**
* Einde script
*/[/COLOR]
[URL="http://www.php.net/ob_end_flush"]ob_end_flush[/URL][COLOR= #007700]();[/COLOR]
?> Erik schreef:Nop. Werking staat in de post boven mij. Voorbeeld:Bedankt, en hoef je dan geen IMG tags meer te gebruiken?

