2011-03-05 55 views
3

這是我第一次使用GD的東西。 我試圖用jcrop jquery插件實現調整大小和裁剪。 我仍然不知道如何保存我裁剪的圖像。在jcrop網站上沒有太多關於它的內容。這裏是我的代碼:php jquery jcrop和imagejpeg

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; 
} 

我怎麼用imagejpeg($ dst_r,空,$ jpeg_quality),以實際寫入圖像文件,並保存在我的分貝它的路徑呢?

在此先感謝。

莫羅

+0

你可以在你的服務器上安裝ImageMagick嗎?在我看來,這比摔跤比GD更容易。我不使用ImageMagick PHP擴展,只是通過'exec()' – 2011-03-05 18:23:40

回答

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 2011-03-05 20:36:51

+0

確實。該文件說:「保存文件的路徑,如果沒有設置或NULL,原始圖像流將直接輸出。」 – 2011-03-05 23:12:34