ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

初心者PHP講座コミュの【質問】 画像縮小

  • mixiチェック
  • このエントリーをはてなブックマークに追加
はじめまして。こんばんは。現在PHPを勉強しています。
いま、PHPを利用してきれいに画像を縮小できるようにしたいのですがどうしていいのか全くわかりません。
GDライブラリを使用すればいいのはわかるんですが何か良いサンプルソースのようなものがありませんでしょうか。

たとえば・・・

500px*500pxの正方形の枠に1200px*900pxの画像をリザイズして画像を生成する。

またサムネイル化してものをいろんなページに表示させたい。

以上です。

どうか皆様の力をお貸し願えませんでしょうか。大変困っております。宜しくお願いいたします。

コメント(2)

はじめまして。

これから私も同じようなものを実装しようとしてて、いろいろテストしてました。

まず、

<form enctype="multipart/form-data" method="post" action="resize.php">
<input type="file" name="image" size="60">
<input type="submit" value="アップロード">
</form>

があるとして、resize.phpは

$bigfile = "big.jpg";
$smallfile = "small.jpg";
$resize_width = 80;

if (is_uploaded_file($_FILES['image']['tmp_name'])) {
//アップしたファイルの大きさ、属性取得
list($width,$height,$type,$attr) = getimagesize($_FILES['image']['tmp_name']);

//jpegの場合
if ($type == 2) {
//まずbig.jpgに保存して
move_uploaded_file($_FILES['image']['tmp_name'],$bigfile);
//縮小するサイズを決める
$resize_height = ($resize_width * $height) / $width;
// サイズ変更後の画像データを生成
$from_image = imagecreatefromjpeg($bigfile);
$image = imagecreatetruecolor($resize_width, $resize_height);
imagecopyresampled($image, $from_image, 0, 0, 0, 0, $resize_width, $resize_height, $width, $height);
imagejpeg($image,$smallfile);

// メモリーの解放
imagedestroy($from_image);
imagedestroy($image);
}


とすると、幅が80の小さい画像が作れます。

わりとキレイに縮小してると思いますが、こればかりは、一度やってみてください。
>いまいちゃん様

さっそくありがとうございました。ちょっと試してみます。
大変感謝しております。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

初心者PHP講座 更新情報

初心者PHP講座のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング