ugrás a tartalomhoz

Kép átméretezése

rentip · 2009. Aug. 10. (H), 17.14
Sziasztok.
Egy olyan gondom van, hogy vannak tárhelyemen feltöltött képek amiket meg akarok jeleníteni a weboldalon. A gond az, hogy sokszor ezek nagy képek, és jó lenne ha sikerülne lekicsinyíteni őket ha egy bizonyos értéknél szélesebbek. Legalábbis egy olyan script kellene ami megnézi, hogy egy adott kép szélessége nagyobb e egy előre beállítottnál, és ha igen akkor számolja ki az arányosan lecsökkentett szélességet és magasságot, majd az új szélességet és magasságot eltárolja két változóban, és ezekkel az új értékekkel jeleníti meg a kicsinyített képet. Olyat olvastam, hogy javascriptel lehetne megoldani, de épkézláb ötletet nem találtam. Nem tudom php-vel lehet e. Ja és GD is van telepítve, azzal gondolom lehet ilyet. Ja és nem olyan kell, hogy létrehoz kis képeket külön fájlként, olyanom van.
Előre is köszönöm a segítségeket.
 
1

mikor feltöltöd, akkor

Tanul0 · 2009. Aug. 10. (H), 17.35
mikor feltöltöd, akkor átméretezed php-val vagy javascriptel úgy, hogy megadsz neki egy maximum szélességet és/vagy magasságot, és azt mented el, nem a nagy képet. Márcsak azért is, mert mondjuk egy 2000x1000 pixeles képet, hiába 800x600-as méretben jelentíted meg, akkor is a nagy képet tölti le. Tehát, mindenképpen ajánlom a kicsinyített mentést, nem pedig a megjelenítési méret átírását.

Boccs a hibákért, ha van!
8

js

gex · 2009. Aug. 11. (K), 10.07
átméretezed php-val vagy javascriptel
aha.
9

Nem is mertem

Ustak · 2009. Aug. 11. (K), 10.52
említeni :-)
2

Megjelenítés

Poetro · 2009. Aug. 10. (H), 17.41
Ja és nem olyan kell, hogy létrehoz kis képeket külön fájlként, olyanom van.

Akkor használd azt, elvégre arra van szükséged. Feltöltik a képet, legenerálsz X méretű kiskép(ek)et, egyet bélyegkép, egyet meg mondjuk előnézetnek, és a környezetnek megfelelően mutatod a megfelelő méretűt.
3

Tudom, de nem olyan kell

rentip · 2009. Aug. 10. (H), 17.56
Tudom, hogy akkor is a nagy képet tölti le, meg jobb módszer lenne az hogy kisképet kreál belőle, olyanom van is, de ha olyan kéne akkor azt használnám, és akkor nem kérdeztem volna :)
Azért köszönöm a gyors hozzászólásokat.
4

Látszik, hogy "buta" vagy,

Tanul0 · 2009. Aug. 10. (H), 18.00
Látszik, hogy "buta" vagy, azt szeretnéd elérni, hogy más megcsinálja neked. Hát nem fogja senki ingyen. Csak gondolkodj egy kicsit, ha neked van olyan scripted, ami bélyeg képet csinál, akkor nem jut eszedbe az, hogy megnézd lehet e állítani mekkora képet csináljon? és akkor mondjuk ha nem értesz hozzá, akkor lekopizod azt a scriptet, átnevezed és megcsinálod, hogy nagyobb képet csináljon ne bélyegképet. Így sajnos senki nem fog tudni neked segíteni, ha mindenre az a válaszod hogy van olyanom de nem az kell.
5

Találtam

rentip · 2009. Aug. 10. (H), 18.16
Sikerült egy megoldást találnom, ami működik is, ideteszem ha esetleg kéne valakinek.
Tudom, hogy nem ez a szebb megoldás, de nekem erre volt szükségem, ha esetleg nem lett volna világos. Azért köszönöm.

<?php
     $image =  "kep.jpg";               
     $size = getimagesize("$image");
       $height = $size[1];
       $width = $size[0];

     if ($height > 150)
          {
               $height = 150;
               $percent = ($size[1] / $height);
               $width = ($size[0] / $percent);
          }
     else if ($width > 150)
          {
               $width = 150;
               $percent = ($size[0] / $width);
               $height = ($size[1] / $percent);
          }
     echo "<img src=\"kep.jpg\" height=\"$height\" width=\"$width\" />";
?>
6

Miért jó?

Poetro · 2009. Aug. 10. (H), 18.21
Persze nem tudom miért jó nekem, ha letöltök egy 10Mb-os képet, amit a böngésző 150×150-ben jelenít meg? Ha én csak egy kis képet szeretnék megmutatani, akkor se az eredetit mutatnám, hanem legalább vmivel közelebbi méretet méreteztetnék a böngészővel. A 150×150px-es kép kb. 20kbyte lehetne.
7

Ugyanolyan

Ustak · 2009. Aug. 10. (H), 21.09
lassan fog ez lejönni, mint ha nagy kép lenne, csak a pici képet fogja a böngésző fél óráig tölteni, már láttam ilyet :-)
Én CodeIngitert használok, melyben a fenti probléma pár config beállítás, de mivel a CodeIgniter is php, biztos hogy nem nagy utánajárás megnézni hogy natívan ez hogy működik. például image resize php kulcsszavak második eredményét nézd meg (az első eredmény a te megoldásod a sitepoint tól)
Üdv:
Gábor