2011-03-05 8 views
3

그건 GD에 관한 첫 번째 접근 방식입니다. jcrop jquery 플러그인을 사용하여 크기 조정 및 자르기를 구현하려고합니다. 나는 자른 이미지를 저장하는 방법을 여전히 알 수 없습니다. jcrop 사이트에는별로 중요하지 않습니다. 여기 내 코드는 다음과 같습니다php jquery jcrop 및 imagejpeg

실제로 이미지 파일을 작성하고 내 DB에서 해당 경로를 저장하기 위해 imagejpeg ($의 dst_r, 널 (null), $의 jpeg_quality)로 할 일을
if ($_SERVER['REQUEST_METHOD'] == 'POST') { 
    $targ_w = $targ_h = 150; 
    $jpeg_quality = 90; 

    $src = 'demo_files/flowers.jpg'; 
    $img_r = imagecreatefromjpeg($src); 
    $dst_r = ImageCreateTrueColor($targ_w, $targ_h); 

    imagecopyresampled($dst_r,$img_r,0,0,$_POST['x'],$_POST['y'], 
      $targ_w,$targ_h,$_POST['w'],$_POST['h']); 

    header('Content-type: image/jpeg'); 

    imagejpeg($dst_r,null,$jpeg_quality); 

    exit; 
} 

?

미리 감사드립니다.

마우로

+0

ImageMagick을 서버에 설치할 수 있습니까? 제 의견으로는 GD와 씨름하는 것보다 훨씬 쉽습니다. ImageMagick PHP 확장을 사용하지 않고 그냥'exec() '를 통해 명령을 호출하십시오. –

답변

3

대신 그것을 출력 파일을 저장할 경우,이 두 가지를 수행합니다

  • 라인 header('Content-type: image/jpeg');
  • 변경 imagejpeg($dst_r, 'path/to/output.jpg', $jpeg_quality);
에 그 이후에 다음 줄을 제거를

imagejpeg() 기능에 대한 문서는 php.net/imagejpeg

입니다.
+0

안녕하세요, 답변 해 주셔서 감사합니다. 한가지 질문 : 'path/to/output.jpg'는 자른 이미지가 저장 될 경로입니까? – Mauro74

+0

사실. 설명서에 "파일을 저장할 경로가 설정되어 있지 않거나 NULL이면 원시 이미지 스트림이 직접 출력됩니다." –