2014-05-15 6 views
0

업로드하는 동안 이미지의 크기를 자동으로 조정하려고합니다. 많은 사이트를 궁금해했지만 사이트마다 사용자가 모든 이미지에 대해 새 너비와 새 높이를 넣었지만 자동 크기 조정을 원하기 때문에 사용자가 동일한 치수 이미지를 업로드 할 때 우리는 쉽게자를 것입니다. 그러나 사용자가 가로 또는 세로 치수 이미지를 업로드하면 이미지가 망가져 잘못된 치수가 잘릴 것입니다. 그래서 나는이 문제에 직면 해있다.자동 이미지 크기 조정 PHP에서 이미지 크기 조정

+0

가능한 복제 (http://stackoverflow.com/questions/4590441/php-thumbnail-image-resizing-with-proportions? rc = 1) (하지만 다른'$ maxwidth'와'$ maxheight') (* 나는 가까운 투표를 할 것입니다. 그러나 자바 스크립트 오류가 발생합니다 : Uncaught TypeError : undefined의 'closeSubmitting'속성을 읽을 수 없습니다. '*) – h2ooooooo

+0

문제가 발생한 곳을 보여주는 코드를 보여주는 것은 어떨까요? –

답변

0
In auto resize case this may be helpful.i am using this code in my oproject 

list($originalWidth, $originalHeight) = getimagesize($imageFile); 
$ratio = $originalWidth/$originalHeight; 


$targetWidth = $targetHeight = min($size, max($originalWidth, $originalHeight)); 

if ($ratio < 1) { 
    $targetWidth = $targetHeight * $ratio; 
} else { 
    $targetHeight = $targetWidth/$ratio; 
} 

$srcWidth = $originalWidth; 
$srcHeight = $originalHeight; 
$srcX = $srcY = 0; 


$targetWidth = $targetHeight = min($originalWidth, $originalHeight, $size); 

if ($ratio < 1) { 
    $srcX = 0; 
    $srcY = ($originalHeight/2) - ($originalWidth/2); 
    $srcWidth = $srcHeight = $originalWidth; 
} else { 
    $srcY = 0; 
    $srcX = ($originalWidth/2) - ($originalHeight/2); 
    $srcWidth = $srcHeight = $originalHeight; 
} 

$targetImage = imagecreatetruecolor($targetWidth, $targetHeight); 
imagecopyresampled($targetImage, $originalImage, 0, 0, $srcX, $srcY, $targetWidth, $targetHeight, $srcWidth, $srcHeight); 
[PHP 섬네일 이미지 비율로 크기 조정]의
+0

$ newwidth = 120; /// 새 widh 정의 $ newheight = 120; /// 새 높이 정의 높이와 너비를 정의하고 싶지 않습니다. 나는 자동 응답을 원한다 –

+0

pritesh 첵이 해결책은 내 대답을 업데이트 –

0

자습서를 사용해야하지만 직접 다른 값을 계산해야합니다. 예를 들어 폭이 600px이고 높이가 1200px 인 이미지가 있습니다. 너는 200px 너비가되기를 원해. 이런 식으로 계산 :

$newImageWidth = 200; 
$imageWidth = 600; 
$imageHeight = 1200; 
$ratio = $imageHeight/$imageWidth; 
$newImageHeight = $newImageWidth * ratio; 
+0

답장을 보내 주셔서 감사합니다. 그러나 이미지 크기가 2000 * 500 인 경우 다시 동일한 문제가 발생하고 다시 이미지가 잘못된 크기로 잘릴 것입니다. –

+0

왜? 이 경우 200x50 크기로 조정됩니다. 어떤 치수를 원하십니까? –

+0

예를 표시하려면이 링크를 확인하십시오. http://www.webappers.com/2008/03/14/smart-image-resizer-auto-resizes-images-in-php/이 링크에서 한 가지 커피 이미지 너는 보여주고있다. 난 그걸 원해. –