ホームページ  >  記事  >  バックエンド開発  >  サムネイルを生成してデータベースに保存する_PHP チュートリアル

サムネイルを生成してデータベースに保存する_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:05:36961ブラウズ

# 定数
define("IMAGE_BASE", './');
define("MAX_WIDTH", 150);
define("MAX_HEIGHT", 150);

# 画像の場所を取得str_replace('. .', '', $_SERVER['QUERY_STRING']);
$image_file = 't.jpg';
$image_path = IMAGE_BASE 。 "$image_file";

# 画像をロードします
$img = null;
$ext = strto lower(end(explode('.', $image_path)));
if ($ext == 'jpg' || $ext == 'jpeg') {
$img = imagecreatefromjpeg($image_path);
} else if ($ext == 'png') {
$img = @imagecreatefrompng($image_path);
# GD のバージョンの場合のみGIF サポートが含まれます
} else if ($ext == 'gif') {
$img = @imagecreatefrompng($image_path);
}

# 画像が正常にロードされた場合は、画像のサイズをテストします
if ($img ) {

# 画像のサイズと倍率を取得します
$width = imagex($img);
$height = imagey($img);
$scale = min(MAX_WIDTH/$width, MAX_HEIGHT/$height);

# 画像が最大値より大きい場合は縮小します
if ($scale < 1) {
$new_width =150; //floor($scale*$width);
$new_height =150;// Floor($scale*$height);

# 新しい一時画像を作成します
$tmp_img = imagecreatetruecolor($new_width, $new_height);

# 古い画像をコピーしてサイズ変更して新しい画像にします
imagecopyresize($tmp_img, $img, 0, 0, 0, 0,$new_width, $new_height, $width, $height);
imagedestroy($img);
$img = $tmp_img;
}
}

# 必要に応じてエラー画像を作成します
if (!$img) {
$img = imagecreate(MAX_WIDTH, MAX_HEIGHT);
imagecolorallocate($img,0,0,0);
$ c = imagecolorallocate($img,70,70,70 );
imageline($img,0,0,MAX_WIDTH,MAX_HEIGHT,$c2);
imageline($img,MAX_WIDTH,0,0,MAX_HEIGHT,$c2);
}

# 画像を表示
header("Content-type: image/jpeg");
imagejpeg($img);
imagedestroy($img);
?>


www.bkjia.com本当http://www.bkjia.com/PHPjc/445089.html技術記事 ?php # 定数define(IMAGE_BASE, './');定義(MAX_WIDTH, 150);定義(MAX_HEIGHT, 150); # 画像の場所を取得str_replace('..', '', $_SERVER['QUERY_STRING']); $image_file = 't.jp...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。