ciao, ho notato che rimpicciolendo immagini sui 700x600px a 100x50px le miniature non vengono molto bene, hanno un contrasto molto alto.. esempio:
immagine ottenuta con photoshop:
stessa immagine ridimensionata da php:
non voglio che quella che genero in php sia uguale a quella di photoshop (sarebbe chiedere troppo) ma almeno un pò più decente..non si può applicarci un effetto blur, o una cosa simile? il codice che ho scritto per fare il thumb è:
Codice PHP:
function thumb_cut($nomeimage, $source_path, $destination_path, $new_width, $new_height){
list($width, $height, $type, $attr) = getimagesize($source_path.$nomeimage);
$compression=100;
$destimg=imagecreatetruecolor($new_width,$new_height) or die("Problemi nelle creazioni dell'immagine");
$srcimg=ImageCreateFromJPEG($source_path.$nomeimage) or die("Problemi nell'aprire l'immagine");
$w=ImageSX($srcimg);
$h=ImageSY($srcimg);
$ro=$new_width/$new_height;
$ri=$w/$h;
if($ro<$ri){
$par="h";
}else{
$par="w";
}
if($par=="h"){
$ih=$h;
$conv=$new_width/$new_height;
$iw=$conv*$ih;
// $iw=number_format($iw, 0);
$cw=($w/2)-($iw/2);
// $cw=number_format($cw, 0);
$ch=($h/2)-($ih/2);
// $ch=number_format($ch, 0);
}else if($par=="w"){
$iw=$w;
$conv=$new_height/$new_width;
$ih=$conv*$iw;
// $ih=number_format($ih, 0);
$cw=($w/2)-($iw/2);
// $cw=number_format($cw, 0);
$ch=($h/2)-($ih/2);
// $ch=number_format($ch, 0);
}
ImageCopyResized($destimg,$srcimg,0,0,$cw,$ch,$new_width,$new_height,$iw,$ih) or die("Problemi nel ridimensionamento");
ImageJPEG($destimg,$destination_path.$nomeimage,$compression) or die("Problemi nel salvataggio");
}