2012-12-22 8 views
5

こんにちは私はそれをオブジェクトにした後にイメージの表示に少しの問題があります。 私はまだオブジェクト画像を使用することを学んでいます。imagecreatefromjpegが動作しない

$what = getimagesize($file); 
switch(strtolower($what['mime'])){ 
    case 'image/png' : $src_id = imagecreatefrompng($file); imagesavealpha($src_id,true) ; break; 
    case 'image/jpeg': $src_id = imagecreatefromjpeg($file); break; 
    case 'image/gif' : $old_id = imagecreatefromgif($file); $src_id = imagecreatetruecolor($what[0],$what[1]); imagecopy($src_id,$old_id,0,0,0,0,$what[0],$what[1]); break; 
    default: die(); 
} 
header('Content-Type: image/jpeg'); 
imagejpeg($scr_id); 
imagedestroy($scr_id); 
die(); 

ブラウザは、テキスト「イメージ」で白紙画像を出力する: は、だからここに私のコードです。 $ファイルでは、ファイルのURLを指定します。 アイデア

+0

$ src_id is falseではないことを確認しましたか? – Codler

答えて

9

これは私にとって正しくテストされました。

<?php // RAY_temp_andrey.php 
error_reporting(E_ALL); 

$file = 'http://laprbass.com/RAY_EE_images/headshot.png'; 
$file = 'http://laprbass.com/RAY_EE_images/headshot.jpg'; 
$file = 'http://laprbass.com/RAY_EE_images/headshot.gif'; 

$what = getimagesize($file); 

switch(strtolower($what['mime'])) 
{ 
    case 'image/png': 
     $img = imagecreatefrompng($file); 
     break; 
    case 'image/jpeg': 
     $img = imagecreatefromjpeg($file); 
     break; 
    case 'image/gif': 
     $img = imagecreatefromgif($file); 
     break; 
    default: die(); 
} 
$new = imagecreatetruecolor($what[0],$what[1]); 
imagecopy($new,$img,0,0,0,0,$what[0],$what[1]); 

header('Content-Type: image/jpeg'); 
imagejpeg($new); 
imagedestroy($new); 
+0

私は一時的なファイルを与えることができますか私はそれを保存する必要があります(これは私のサイズ変更機能です)?$ Img = Images :: DoImage(私はこの関数を使用してコードのどこかに助けていただきありがとうございます。 $ _FILES ["Image"] ["tmp_name"]、200,300); – Andrey

+2

まず、ファイルをアップロードして保存してから、サイズ変更または再フォーマットを実行する必要があります。 –