Ho un problema con la creazione di una thumb con altezza>larghezza.
In pratica qualunque immagine inserisco mi aggiunge una banda più o meno alta sotto l'immagine.
La procedura che uso è questa:
Quando invece ho miniature con larghezza > altezza nessun problemacodice:if (is_uploaded_file($file['tmp_name'])) { $fileName = $this->creanomefile($file['name']); while(file_exists($imgDir.$fileName)) $fileName = "a_".$fileName; $filePath=$imgDir.$fileName; $fileInfo=getimagesize($file['tmp_name']); $width = $fileInfo[0]; $height = $fileInfo[1]; if($thumb){ // crea thumb $thumbPath=$thumbDir.$fileName; if($width>$height) $width=($height/$thumbHeight)*$thumbWidth; else $height=($width/$thumbWidth)*$thumbHeight; $image_id=imagecreatefromjpeg($file['tmp_name']); $new_image= imagecreatetruecolor($thumbWidth,$thumbHeight); imagecopyresampled($new_image,$image_id,0,0,0,0,$thumbWidth, $thumbHeight, $width, $height); imagejpeg($new_image,$thumbPath,90); imageDestroy($image_id); imageDestroy($new_image); } if($maxHeight || $maxWidth){ // se vengono inserite le dimensioni if(!$maxHeight && $maxWidth)$maxHeight=($height*($maxWidth/$width)); if($width>$height) $width=($height/$maxHeight)*$maxWidth; else $height=($width/$maxWidth)*$maxHeight; $image_id=imagecreatefromjpeg($file['tmp_name']); $new_image= imagecreatetruecolor($maxWidth,$maxHeight); imagecopyresampled($new_image,$image_id,0,0,0,0,$maxWidth, $maxHeight, $width, $height); imagejpeg($new_image,$filePath,90); imageDestroy($image_id); imageDestroy($new_image); } else move_uploaded_file($file['tmp_name'], $filePath); }

Rispondi quotando