Autor | Zpráva | ||
---|---|---|---|
rad Profil * |
#1 · Zasláno: 8. 10. 2011, 12:08:21
Dobry den
Chtel jsem se zeptat na problem s kvalitou obrazku pri pouziti tohoto kodu kvalita je opravdu mizerna delam neco spatne ?? if(preg_match('/[.](jpg)$/', $filename)) { $im = imagecreatefromjpeg($path_to_image_directory . $filename); } else if (preg_match('/[.](gif)$/', $filename)) { $im = imagecreatefromgif($path_to_image_directory . $filename); } else if (preg_match('/[.](png)$/', $filename)) { $im = imagecreatefrompng($path_to_image_directory . $filename); } $ox = imagesx($im); $oy = imagesy($im); if (($ox<800)&&($oy<800)) { imagedestroy($im); } else{ if($ox>$oy){ $nx=800; $ny=($nx*$oy)/$ox; } else{ $ny=800; $nx=($ny*$ox)/$oy; } $nm = imagecreatetruecolor($nx, $ny); imagecopyresized($nm, $im, 0,0,0,0,$nx,$ny,$ox,$oy); imagejpeg($nm, $target, 100); imagedestroy($nm); } kod neni cely ale tady menim velikost tak se to bude tykat asi teto casti diky |
||
o_O Profil |
#2 · Zasláno: 8. 10. 2011, 12:15:53 · Upravil/a: o_O
rad:
Na zmenšování obrázků doporučuji použít třídu SimpleImage. „if(preg_match('/[.](jpg)$/', $filename)) {“ Vhodnější je používat: pathinfo($filename,PATHINFO_EXTENSION); |
||
Davex Profil |
#3 · Zasláno: 8. 10. 2011, 12:35:26
rad:
„kvalita je opravdu mizerna delam neco spatne ??“ Pro zmenšení používáš funkci imagecopyresized() . Lepší kvality dosáhneš funkcí imagecopyresampled() .
|
||
Chro Profil |
#4 · Zasláno: 8. 10. 2011, 18:48:55
rad:
Používej funkci imagecopyresampled() jak ti radí Davex. Případně můžeš obrázek před uložením ještě jemně zaostřit. $matrix = array( array(-1, -1, -1), array(-1, 16, -1), array(-1, -1, -1) ); $delitel = array_sum(array_map('array_sum', $matrix)); imageconvolution($nm, $matrix, $delitel, 0); imagejpeg($nm, $target, 90); imagedestroy($nm); |
||
rad Profil * |
#5 · Zasláno: 8. 10. 2011, 19:58:38
super diky hned zkusim
|
||
Časová prodleva: 13 let
|
0