端くれプログラマの備忘録 PHP [PHP] 画像を縮小して合成する (GD)

[PHP] 画像を縮小して合成する (GD)

画像ファイルを読み込んで縮小して合成するサンプル。

<?php

header("Content-type: image/png");

$width = 600;   // canvas size
$height = 400;

$img = imagecreatetruecolor($width, $height);
$blue = imagecolorallocate($img, 200, 200, 255);
imagefilledrectangle($img, 0, 0, $width-1, $height-1, $blue);

$photo = "images/test.png";
$img1 = imagecreatefrompng($photo);
list($w1, $h1) = getimagesize($photo);

$w = 400;
$h = $w * ($h1 / $w1);
$x = ($width - $w) / 2;
$y = ($height - $h) / 2;
ImageCopyResampled($img, $img1, $x, $y, 0, 0, $w, $h, $w1, $h1);

imagepng($img);
imagedestroy($img);

?>

test_img