Ahoj, mám takovej problémek... Chtěl bych automaticky generovat náhledy na obrázky. Je blbost zadávat (když originál má třeba 640*480) velikost <img width=\"150\" height=\"100\">, protože počítač stejně bude stahovat plnou velikost (nějakých 100kB. Chtěl bych proto dynamicky vytvářet náhled na originální fotku v malém rozlišení a tedy i s malou velikostí, aby chudáci uživatelé nemuseli tahat hden taký "kvanta" dat... Poraďte, jak na to, prosím, fakt si s tím nevím rady...
                                 
                                 
                               
               
                              
                                 
                                      Na to použij GD library.
Obrázek do stránky vložíš takto:
<img src="images.php?img=foto.jpg">
a toto das do souboru images.php:
<?
//nastaveni velikosti nahledu
define(MAX_WIDTH, 150);
define(MAX_HEIGHT, 150);
/* funkcia na vykreslenie error obrázku 
parameter - retazec, ktorý sa má vypísat ako ERROR */ 
function ErrorImage($string) 
{ 
  header ("Content-type: image/png"); 
  $im = imagecreate (70, 70); 
  $background_color = imagecolorallocate ($im, 90, 90, 90); 
  $text_color = imagecolorallocate ($im, 255, 255, 255); 
  imagestring ($im, 5, 5, 5, "  ?  ", $text_color); 
  imagepng ($im); 
  exit(); 
} 
/* ak subor existuje - získanie informácií o obrázku 
$size[0] - šírka 
$size[1] - výška 
$size[2] - formát */ 
$obr = "slozka_s_obrazky/$img";
if(file_exists($obr)) 
  $size=getimagesize($obr); 
/* ak subor neexistuje - zobrazenie error oébrazku */ 
else 
  ErrorImage("Soubor neexistuje"); 
/* ak zadaná šírka je menšia ako 1px, alebo nie je císlo, tak sa vykreslí error obrázok 
to isté platí aj pre výsku */ 
if(MAX_WIDTH<1) 
  ErrorImage("Nekorektni sirka nahledu"); 
if(MAX_HEIGHT<1) 
  ErrorImage("Nekorektni vyska nahledu"); 
/* pridelenie hlavicky */ 
switch($size[2]) 
{ 
  case 1: 
    $type="gif"; 
    header("Content-type: image/png"); 
    break; 
  case 2: 
    $type="jpeg"; 
    header("Content-type: image/jpeg"); 
    break; 
  case 3: 
    $type="png"; 
    header("Content-type: image/png"); 
    break; 
/* ak je to iný formát obrázku alebo to nie je obrázok, vykreslenie error obrázku */ 
  default: 
    ErrorImage("Nekorektni typ souboru"); 
} 
/* výpocet novej šírky a výšky */ 
$scale_width=MAX_WIDTH/$size[0]; 
$scale_height=MAX_HEIGHT/$size[1]; 
$scale=($scale_width <= $scale_height ? $scale_width : $scale_height); 
$new_width=ceil($scale*$size[0]); 
$new_height=ceil($scale*$size[1]); 
/* vytvorenie cielového a zdrojového obrázku */ 
  $im = imagecreatetruecolor($new_width,$new_height); 
switch($type) 
{ 
  case "gif": 
    $res_im=imagecreatefromgif($obr); 
    break; 
  case "jpeg": 
    $res_im=imagecreatefromjpeg($obr); 
    break; 
  case "png": 
    $res_im=imagecreatefrompng($obr); 
    break; 
} 
/* kopírovanie oblasti do cielového obázku */ 
imagecopyresampled($im, $res_im, 0, 0, 0, 0, $new_width+1, $new_height+1, $size[0], $size[1]); 
/* zrušenie zdrojového obrázku */ 
imagedestroy($res_im); 
/* výstup náhladu do browsera */ 
switch($type) 
{ 
  case "jpeg": 
    imagejpeg($im); 
    break; 
  case "gif": 
  case "png": 
    imagepng($im); 
    break; 
} 
?>
                                 
                                 
                               
               
                              
                                 
                                      Ježiš, zkus trochu vlastní snahy. O GD knihovně je na netu spousta článků (zkusil bych interval.cz ...), tak se to můžeš naučit a podle toho vyrobit. I když většinou stačí manuál a trocha logiky.