Autor Zpráva
WeeHool
Profil
Krásné nedělní odpoledne přeji..
tak mám opět problémeček..

Pomocí tohoto skriptu sem si chtěl vytvořit náhled obrázku.. bohužel.. klíčová funkce zlobí:

list($width, $height) = getimagesize($image);
        if ($width>$height)
        {
          $pomer = $width/$height;
          $minwidth = 146;
          $minheight = ceil($minwidth/$pomer);
        } elseif ($height>$width)
        {
          $pomer = $height/$width;
          $minheight = 146;
          $minwidth = ceil($minheight/$pomer);  
        } else
        {
          $minheight = 146;
          $minwidth = 146;
        }
        $type = exif_imagetype($image);
        $thumbnail = exif_thumbnail($image, $minwidth, $minheight, $type);
        $preview = md5($nazev);
        $handle = fopen ("previews/$preview.jpg", "a");
        if ($thumbnail!==false)
        {
          fwrite ($handle, $thumbnail);
        } else
        {
          echo "Generování se nezdařilo";
        }
        fclose ($handle);

Bohužel skončím u hlášky Generování se nezdařilo.

Kde by mohla být bota??
martin1312
Profil
takto sa náhľady negenerujú. Na uloženie obrázku použi fciu http://php.net/manual/en/function.imagejpeg.php . A celkovo to máš veľmi divné. Pohľadaj na googli script a inšpiruj sa.
candiess
Profil
WeeHool:
A nebo využij již vytvořené knihovny a postupu na této stránce http://webtvorba.howto.cz/obrazky-v-php-levou-zadni/
WeeHool
Profil
tak nakonec sem to udělal takto:
switch($type)
        {
          case IMAGETYPE_GIF:  $fOpen = "imagecreatefromgif";  $fSave = "imagegif";  $ext = "gif"; break;
          case IMAGETYPE_JPEG: $fOpen = "imagecreatefromjpeg"; $fSave = "imagejpeg";  $ext = "jpg"; break;
          case IMAGETYPE_PNG:  $fOpen = "imagecreatefrompng";  $fSave = "imagepng";  $ext = "png"; break;
          default:             die("Nelze určit typ obrázku.");
        }
        $soubor = $fOpen($image);
        $nahled = imagecreatetruecolor($minwidth, $minheight);
        $resize = imagecopyresized
        (
          $nahled, $soubor, 0, 0, 0, 0,
          $minwidth, $minwidth, $width, $height
        );
        $prevnazev = md5($nazev);
        $preview = "$prevnazev.$ext";
        $kam = "previews/$preview";
        $fSave($nahled, $kam);



ale dělá to bludy..

original

miniatura


original

miniatura


kdo ví, proč tomu tak je??


jsem vůl..
$resize = imagecopyresized
        (
          $nahled, $soubor, 0, 0, 0, 0,
          $minwidth, $minheight, $width, $height
        );

sem tam měl 2x minwidth

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0