利用GD库函数生成上传图片的缩略图
$img = imagecreatefromjpeg("C:\\dd.jpg");$width = imageSX($img);$height = imageSY($img);if (!$width || !$height) { echo "ERROR:invalid width or height"; exit(0);}//创建缩略图$target_width = 100;$target_height = 100;$target_ratio = $target_width / $target_height;$img_ratio = $width / $height;if ($target_ratio > $img_ratio) { $new_height = $target_height; $new_width = $img_ratio * $target_height;} else { $new_height = $target_width / $img_ratio; $new_width = $target_width;}if ($new_height > $target_height) { $new_height = $target_height;}if ($new_width > $target_width) { $new_width = $target_width;}$new_img = ImageCreateTrueColor(100, 100);if (!@imagefilledrectangle($new_img, 0, 0, $target_width - 1, $target_height - 1, 0)) { echo "ERROR:Could not fill new image"; exit(0);}if (!imagecopyresampled($new_img, $img, ($target_width - $new_width) / 2, ($target_height - $new_height) / 2, 0, 0, $new_width, $new_height, $width, $height)) { echo "ERROR:Could not resize image"; exit(0);}ob_start();imagejpeg($new_img);$imagevariable = ob_get_contents();ob_end_clean();header("Content-type: image/jpeg");header("Content-Length: " . strlen($imagevariable));echo $imagevariable;
页:
[1]