supernova Posted January 19, 2008 Report Posted January 19, 2008 Kā lai uztaisa, kad uploadē attēlu galerijā(folderī) caur webu, : <form method="post" action="<?=$script_url;?>?<?=$_SERVER['QUERY_STRING'];?>" enctype="multipart/form-data" style="margin:0px;"> <input type="file" name="image" /> <input type="hidden" name="album" value="<?=$album;?>" /> <input type="hidden" name="upload" value="true" /> <input type="submit" value=" OK! " /> Lai Thumbnailu izmēri būtu katram bilžu izmēram savādāki(diva tipa) viens prieksh 1024 x 768 izmēra, otrs prieksh 768 x 1024. a tgd man ir tā ka visi attēlu thumnail'i ir 145x120 :( Thumbnail skripts apm šāds: $thumb_width="145"; //Width of the thumb $thumb_height="120"; // Height of the thumb $imgdata=getimagesize($full_server.$album.$file); $imgresized=imagecreatetruecolor($thumb_width, $thumb_height); If($file_ext=="gif") { $imgsoruce=imagecreatefromgif($full_server.$album.$file); } Elseif($file_ext=="jpg") { $imgsoruce=imagecreatefromjpeg($full_server.$album.$file); } Elseif($file_ext=="png") { $imgsoruce=imagecreatefrompng($full_server.$album.$file); } Else { return false; } Es vēlos panākt, lai katrai bildžu tipam, piem horizontālajai(1024 x 768) un portretam(768 x 1024) būtu katram savu izmēru thumnaiļi,, lūdzu kāds palīdzat!
Kavacky Posted January 19, 2008 Report Posted January 19, 2008 $img = imagecreatefrom*(...); $w = imagesx($img); $h = imagesy($img); if ( $w > $h ) { // horizontāla } else { // vertikāla }
supernova Posted January 19, 2008 Author Report Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs kur man ir jaaraksta tie izmeeri thumbnailjiem??? O_o
mounkuls Posted January 19, 2008 Report Posted January 19, 2008 if ( $w > $h ) { // horizontāla // te liec izmerus tiem $thumb_width="145"; $thumb_height="120"; kādus vajag priekš horizontālās } else { // vertikāla // te liec izmerus tiem $thumb_width="145"; $thumb_height="120"; kādus vajag priekš portreta }
supernova Posted January 19, 2008 Author Report Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs es taa ari izdariiju, bet man visi atteelu thumbnaili ir sataisiiti peec portreta izmeeriem(145x190), arii tie kuri bija horizontaalie, te pilns kods: http://paste.php.lv/6762
Lynx Posted January 19, 2008 Report Posted January 19, 2008 Kā tad tavam kodam būtu jasaprot, kas ir $w un $h, ja viņi pirms tam nav definēti? 1) Iesaku rakstīt pašam kodu no 0, būs daudz vieglāk un pats neapmaldīsies. Kā arī tajā kodā ir ļoti daudz neglīti risinājumi. 2) Nav nepieciešams int vērtības likt pēdiņās. 3) Tas ifs, kas nosaka izmērus tev janes no augšas uz to vietu, kur tu jau esi noskaidrojis attēla izmēru, gala rezultāts ir šāds: $imgdata=getimagesize($full_server.$album.$file); if ($imgdata[0] > $imgdata[1] ) { $thumb_width=145; $thumb_height=120; } else { $thumb_width=145; $thumb_height=193; } $imgresized=imagecreatetruecolor($thumb_width, $thumb_height); If($file_ext=="gif") { $imgsoruce=imagecreatefromgif($full_server.$album.$file); } //..... imagecopyresized($imgresized, $imgsoruce, 0, 0, 0, 0, $thumb_width, $thumb_height, $imgdata[0], $imgdata[1]);
Wuu Posted January 19, 2008 Report Posted January 19, 2008 (edited) function createtrumb ($filename,$width,$height,$newfile) { list($width_orig, $height_orig) = getimagesize($filename); $ratio_orig = $width_orig/$height_orig; if ($width/$height > $ratio_orig) { $width = $height*$ratio_orig; } else { $height = $width/$ratio_orig; } $image_p = imagecreatetruecolor($width, $height); $image = imagecreatefromjpeg($filename); imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig); imagejpeg($image_p,$newfile, 100); imagedestroy($image_p); imagedestroy($image); } createtrumb ($filename,90,70,$newfile); createtrumb(bildeKoAtver,maxPlatums,maxAugstums,KurSaglabātJaunoAtēlu); Nekropļo bildi vienkārši samazina līdz maksimālajiem lielumiem! Edited January 19, 2008 by Wuu
supernova Posted January 19, 2008 Author Report Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs :/ itkaa izmeeri izdevaas, bet thumbnailji visi ir melni! nau atteeli vinjos!
Wuu Posted January 19, 2008 Report Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs Pamēģini funkciju ko es ieliku 100% strādā !
supernova Posted January 19, 2008 Author Report Posted January 19, 2008 Nevajag taisīt muļķīgas QUOTEs es jau to arii lietoju :( varbuut netaa ierakstiiju, luudzu ja vari iepousto pilnu versiju paste.php.lv , nezinu ko es ne taa sadariiju :(
Lynx Posted January 19, 2008 Report Posted January 19, 2008 Kā teiktu bubu: netaisi muļķigas quotes :P Un es ceru, ka manā variantā tu šo komentāru rindu: //..... nomainīji ar pārējo nepieciešamo kodu(kuru es nepostoju, lai lieki nepiesārņotu vietu), jo spriežot pēc tavām problēmām es to stripri sāku to apšaubīt...
supernova Posted January 19, 2008 Author Report Posted January 19, 2008 (edited) Viss kartiibaa! Edited January 20, 2008 by supernova
Recommended Posts