Autor Zpráva
Nikolaj
Profil *
Mam proibém s imlementaci třídy pro změnu obrázku. doma na testovacímserveru vše jde ale na hostingu (ignum) nelze rozjet jinak graficka knihovna GD je povolena. prosim o pomoc kde muze byt problem. Jinak je třída plně funkční, umazal jsem nepotřebné metody ... i toto torzo je funkcni samostatně


/*	Prevzorkování obrázku GIF, PNG,JPG a následnì pøevod do PNG & vztvoøeni složky v uživatelovì galerii pro danný obrázek

* @param string $file_in název zmenšovaného souboru
* @param string $file_out název výsledného souboru
* @param int [$max_x] maximální šírka výsledného obrázku, 0 pokud na ní nezáleží
* @param int [$max_y] maximální výška výsledného obrázku, 0 pokud na ní nezáleží

* @param int [$user_folder] cislo id uzivatele kde je vytvorena galerie
* @param int [$user_galery] cislo galerie v jeho profilu
* @return bool true, false v prípade chyby
*/
class resize_image {

public $file_in;
public $file_out;
public $max_x;
public $max_y;

public function image_shrink($file_in,$file_out,$max_x,$max_y) {

$this->file_in = $file_in;
$this->file_out = $file_out;
$this->max_x = $max_x;
$this->max_y = $max_y;

$imagesize = getimagesize($this->file_in);
if ((!$this->max_x && !$this->max_y) || !$imagesize[0] || !$imagesize[1]) {
return false;
}
switch ($imagesize[2]) {
case 1: $img = imagecreatefromgif($this->file_in); break;
case 2: $img = imagecreatefromjpeg($this->file_in); break;
case 3: $img = imagecreatefrompng($this->file_in); break;
default: return false;
}
if (!$img) {
return false;
}
if ($this->max_x) {
$width = $this->max_x;
$height = round($imagesize[1] * $width / $imagesize[0]);
}
if ($this->max_y && (!$this->max_x || $height > $this->max_y)) {
$height = $this->max_y;
$width = round($imagesize[0] * $height / $imagesize[1]);
}
$img2 = imagecreatetruecolor($width, $height);
imagecopyresampled($img2, $img, 0, 0, 0, 0, $width, $height, $imagesize[0], $imagesize[1]);

return imagepng($img2, $this->file_out);
}
}
Nikolaj
Profil *
jinak formular pro odeslani je naprikad :


<!-- nejakysoubor.php !-->


<form method="post" enctype="multipart/form-data" action="nejakysoubor.php">
daTA OBRAzek:<input type="file" name="fless" />
<input type="submit" value="odeslat" />
</form>

$blob = new resize_image();
if($blob->image_shrink($fless, "soubor.png", 350, 300))
echo("ok");
else
echo("nejde to");
Toto téma je uzamčeno. Odpověď nelze zaslat.

0