napisałem taką oto funkcję wykorzystującą GD do zmiany rozmiaru obrazka oraz do wyświetlenia ramki:
<?php function resize($zdjecie) { $img = imagecreatefromjpeg($zdjecie); $width = 140; $height = $size[1] * $width/$size[0]; if ($height>105) { $height = 105; $width = $size[0] * $height/$size[1]; } $im = imagecreatetruecolor($width,$height); imagecopyresampled($im, $img, 0, 0, 0, 0, $width, $height, imagesx($img), imagesy($img)); $destination = imagecreatetruecolor($destinationSize[0],$destinationSize[1]); $white = imagecolorallocate($destination, 255, 255, 255); $border = imagecolorallocate($destination, 59, 70, 77); $rog = imagecolorallocate($destination, 58, 68, 76); imagefill($destination, 0, 0, $white); imagecopyresampled($destination, $im, 3, 3, 0, 0, imagesx($im),imagesy($im),imagesx($im),imagesy($im)); //top imageline($destination, 1,0, $destinationSize[0]-2,0, $border); imagesetpixel($destination, 0,0, $rog); //lewa imageline($destination, 0,1,0,$destinationSize[1]-2, $border); imagesetpixel($destination, 0,$destinationSize[1]-1, $rog); //prawa imageline($destination, $destinationSize[0]-1,1,$destinationSize[0]-1,$destinationSize[1]-2, $border); imagesetpixel($destination, $destinationSize[0]-1,$destinationSize[1]-1, $rog); //bottom imageline($destination, 1,$destinationSize[1]-1, $destinationSize[0]-2,$destinationSize[1]-1, $border); imagesetpixel($destination, $destinationSize[0]-1,0, $rog); imagejpeg($destination); } resize("tlo.jpg"); resize("morze.jpg"); resize("morze2.jpg"); ?>
Problem polega na tym, że nie mogę wyświetlić 3 obrazków na raz, bo kod wykona się takjakby raz dla jednego obrazka i na tym poprzestaje... Czy ktoś ma jakiś pomysł jak to naprawić, ewentualnie jak usprawnić skrypt? Do ImageMagick nie mam dostępu...