Autor Zpráva
RiZe
Profil
Chtěl jsem si napsat skript na uploadování obrázků z prostředí administrace do galerie, jenže jsem narazil na problém vytváření zmenšenin. Lze vůbec pomocí PHP zmenšit obrázek jak velikostně, tak datově? Jsou na to nějaké skripty. Pls pomozte.
Zerog
Profil *
jukni sem http://interval.cz/clanek.asp?article=2520
samurajj
Profil *
kdysi jsem na to nasel tridu v php.. :
http://kentung.f2o.org/scripts/thumbnail/
RiZe
Profil
ok diky
krteczek
Profil
tohle používám já,

define("Delsi_strana","150") //zde se nastavuje kolik je ąířka obrázku po resizi

function vytvornahled($IMAGE_SOURCE)
{
$IMAGE_=$IMAGE_SOURCE;
$strany=getimagesize("obrazky/".$IMAGE_);
$type=$strany[2];
if(($strany[0]<Delsi_strana)&&($strany[1]<Delsi_strana))
{
$THUMB_X=$strany[0];
$THUMB_Y=$strany[1];
}
else
{
if($strany[0]>=$strany[1])
{
$THUMB_X=Delsi_strana;
$THUMB_Y=($strany[1]/($strany[0]/$THUMB_X));
}
else
{
$THUMB_Y=Delsi_strana;
$THUMB_X=($strany[0]/($strany[1]/$THUMB_Y));
}
}
$OUTPUT_FILE ='n' . "_".$IMAGE_SOURCE;
$IMAGE_PROPERTIES = GetImageSize("obrazky/".$IMAGE_SOURCE);
if (!$IMAGE_PROPERTIES[2] == 2)
{
return(0);
}
else
{
if($type==2)
{
$BACKUP_FILE = $OUTPUT_FILE . "_backup.jpg";
copy("obrazky/".$IMAGE_,"obrazky/".$BACKUP_FILE);

if(!$SRC_IMAGE = ImageCreateFromJPEG("obrazky/".$BACKUP_FILE))
{
echo "chyba".error();
}
}
if($type==1)
{
$BACKUP_FILE = $OUTPUT_FILE . "_backup.gif";
copy("obrazky/".$IMAGE_,"obrazky/".$BACKUP_FILE);
if(!$SRC_IMAGE = ImageCreateFromGIF("obrazky/".$BACKUP_FILE))
{
echo "chyba".error();
}
}
if($type==3)
{
$BACKUP_FILE = $OUTPUT_FILE . "_backup.png";
copy("obrazky/".$IMAGE_,"obrazky/".$BACKUP_FILE);
if(!$SRC_IMAGE = ImageCreateFromPNG("obrazky/".$BACKUP_FILE))
{
echo "chyba".error();
}
}
//echo 'source'.$SRC_IMAGE;
$SRC_X = ImageSX($SRC_IMAGE);
$SRC_Y = ImageSY($SRC_IMAGE);
if (($THUMB_Y == "0") && ($THUMB_X == "0"))
{
return(0);
}
elseif ($THUMB_Y == "0")
{
$SCALEX = $THUMB_X/($SRC_X-1);
$THUMB_Y = $SRC_Y*$SCALEX;
}
elseif ($THUMB_X == "0")
{
$SCALEY = $THUMB_Y/($SRC_Y-1);
$THUMB_X = $SRC_X*$SCALEY;
}
$THUMB_X = (int)($THUMB_X);
$THUMB_Y = (int)($THUMB_Y);
$DEST_IMAGE = imagecreatetruecolor($THUMB_X, $THUMB_Y);
if(unlink("obrazky/".$BACKUP_FILE))
{
//echo "záloľní obrázek obrazky/".$BACKUP_FILE." byl smazán";
}
else
{
//echo "záloľní obrázek obrazky/".$BACKUP_FILE." se nepodařilo odstranit";
}
if (!imagecopyresized($DEST_IMAGE, $SRC_IMAGE, 0, 0, 0, 0, $THUMB_X, $THUMB_Y, $SRC_X, $SRC_Y))
{
imagedestroy($SRC_IMAGE);
imagedestroy($DEST_IMAGE);
return(0);
}
else
{
imagedestroy($SRC_IMAGE);
if (ImageJPEG($DEST_IMAGE,"obrazky/".$OUTPUT_FILE))
{
$strany=getimagesize('obrazky/'.$OUTPUT_FILE);
//echo '<img src="obrazky/'.$OUTPUT_FILE.'" '.$strany[3].' alt="náhled"> ';
imagedestroy($DEST_IMAGE);
return(1);
}
imagedestroy($DEST_IMAGE);
}
return(0);
}
}

dneska už to mám trošku jinak ale základ je stejný
krteczek
shArk
Profil
mohly by ste mi tu dať lahkú galériu ale polopate lebo tu z intervalu sa mi nepodarilo dať dokopy a ani tato vyššie mi nejak nešla :P
vopred dik :)

PS: potreboval by som to iba ako skript nie ako 10-20 suborov.. nikde neviem najsť taku galeriu..
shArk
Profil
prosim krteczek..

píše mi to error :
Parse error: parse error in c:\www\web\gallery.php on line 15

na 15ke mám :
function vytvornahled($IMAGE_SOURCE)
krteczek
Profil
shArk tohle je funkce, je napsaná na míru mým potrebám, ale základ je v tom, že tu funkci volám s parametrem

vytvornahled("název.obrázku");

kde název obrázku je 3.jpg (například) a je umístěný v obrázky/

takze:

$obrazek="3.jpg";
if(vytvornahled($obrazek))
{
echo "náhled byl vytvořen";
}


už chapeš? krteczek
shArk
Profil
chapem..

a ked tam mam tých obrazkov viac ??

-- ja mám asi 50-100 screenov v zložke obrazky a mam tam aj upload .. a potreboval by som aj nejaku tu galeriu lebo manualne to robiť nechcem.. :p
krteczek
Profil
no šlo by to treba vylistováním obsahu adresáře, a potom jen klikanim na jednotlive odkazy vytvare náhledy
shArk
Profil
teraz som stiahol cez torrent nejake skripty.. (1800 PHP Scripts) xD.. tak ešte ram kuknem a ked nenajdem tak niečo poriešime ;)
shArk
Profil
no galeriu by som mal už len potrebujem aby sa po uploadnutí obrazku obrazok skopiroval, zmenšil (na 80x60) a mal priponu .gif ..

mohol by si prisim pomôcť ? :P mam ich v zložke /upload/ ..
Toto téma je uzamčeno. Odpověď nelze zaslat.

0