cd407d9c by root

画像リサイズ処理の修正

1 parent 3ae507d6
...@@ -1257,7 +1257,6 @@ class WFFileBrowser extends JObject ...@@ -1257,7 +1257,6 @@ class WFFileBrowser extends JObject
1257 1257
1258 // 登録する画像の幅がリサイズ後の幅(1000px)より大きいことを確認(1000px以上でリサイズ処理) 1258 // 登録する画像の幅がリサイズ後の幅(1000px)より大きいことを確認(1000px以上でリサイズ処理)
1259 if ($width > $new_width) { 1259 if ($width > $new_width) {
1260
1261 // 画像情報から画像の高さを取得 1260 // 画像情報から画像の高さを取得
1262 $height = (int) $image_info[1]; 1261 $height = (int) $image_info[1];
1263 // 画像タイプを取得 1262 // 画像タイプを取得
...@@ -1267,43 +1266,32 @@ class WFFileBrowser extends JObject ...@@ -1267,43 +1266,32 @@ class WFFileBrowser extends JObject
1267 // リサイズ後の高さを定義(アスペクト比を維持して定義) 1266 // リサイズ後の高さを定義(アスペクト比を維持して定義)
1268 $new_height = $new_width * $aspect_ratio; 1267 $new_height = $new_width * $aspect_ratio;
1269 1268
1270 $base_image = null;
1271 switch ($image_type) { 1269 switch ($image_type) {
1272 // 画像タイプがPNGの場合の処理 1270 // 画像タイプがPNGの場合の処理
1273 case 'image/png': 1271 case 'image/png':
1274 // 元の画像から新しい画像を作る準備 1272 // 元の画像から新しい画像を作る準備
1275 $base_image = imagecreatefrompng($tmp_file); 1273 $base_image = imagecreatefrompng($tmp_file);
1274 // サイズを指定して新しい画像のキャンバスを作成
1275 $new_image = imagecreatetruecolor($new_width, $new_height);
1276 // 画像のコピーと伸縮
1277 imagecopyresampled($new_image, $base_image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
1278 // コピーした画像を出力
1279 imagepng($new_image, $tmp_file);
1276 break; 1280 break;
1277 // 画像タイプがJPEGの場合の処理 1281 // 画像タイプがJPEGの場合の処理
1278 case 'image/jpeg': 1282 case 'image/jpeg':
1279 // 元の画像から新しい画像を作る準備 1283 // 元の画像から新しい画像を作る準備
1280 $base_image = imagecreatefromjpeg($tmp_file); 1284 $base_image = imagecreatefromjpeg($tmp_file);
1285 // サイズを指定して新しい画像のキャンバスを作成
1286 $new_image = imagecreatetruecolor($new_width, $new_height);
1287 // 画像のコピーと伸縮
1288 imagecopyresampled($new_image, $base_image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
1289 // コピーした画像を出力
1290 imagejpeg($new_image, $tmp_file);
1281 break; 1291 break;
1282 default: 1292 default:
1283 break; 1293 break;
1284 } 1294 }
1285
1286 // $base_imageがnullから更新されている場合を確認
1287 if ($base_image) {
1288 // サイズを指定して新しい画像のキャンバスを作成
1289 $new_image = imagecreatetruecolor($new_width, $new_height);
1290 // 画像のコピーと伸縮
1291 imagecopyresampled($new_image, $base_image, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
1292 switch ($image_type) {
1293 // 画像タイプがPNGの場合の処理
1294 case 'image/png':
1295 // コピーした画像を出力
1296 imagepng($new_image, $tmp_file);
1297 break;
1298 // 画像タイプがJPEGの場合の処理
1299 case 'image/jpeg':
1300 // コピーした画像を出力
1301 imagejpeg($new_image, $tmp_file);
1302 break;
1303 default:
1304 break;
1305 }
1306 }
1307 } 1295 }
1308 } 1296 }
1309 1297
......
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!