先日インストールしたImagickの基本的な使い方を紹介します
ImagickはPHPからImageMagickを使う際に使うpeclのAPIになります
基本の使い方
~~~
getMessage();
}
?>
~~~
リサイズする
~~~
resizeImage(100, 0, Imagick::FILTER_LANCZOS, 1);
/* リサイズした画像を保存する */
$im->writeImage(‘/var/www/html/new.jpg’);
/* imagick objectを破棄する */
$im->destroy();
echo ‘resize image’;
} catch(Exception $e) {
echo $e->getMessage();
}
?>
~~~
サムネイルを作成する
~~~
cropThumbnailImage(100, 100);
/* リサイズした画像を保存する */
$im->writeImage(‘/var/www/html/new.jpg’);
/* imagick objectを破棄する */
$im->destroy();
echo ‘thumbnail image’;
} catch(Exception $e) {
echo $e->getMessage();
}
?>
~~~
画像に画像を重ねる
~~~
getImageGeometry();
$x = $geo[‘width’] / 2;
$y = $geo[‘height’] / 2;
/* 別の画像を読み込む */
$layer = new Imagick(‘/var/www/html/layer.jpg’);
/* $layerの画像サイズを取得し、その中心を計算する*/
$geo = $layer->getImageGeometry();
/* その座標を中心とするので、幅、高さの半分の値だけ$xと$yの値をずらします。*/
$x = $x – $geo[‘width’] / 2;
$y = $y – $geo[‘height’] / 2;
/* existsにlayerを重ねる */
$im->compositeImage($layer, Imagick::COMPOSITE_DEFAULT, $x, $y);
/* 画像を保存する */
$im->writeImage(‘/var/www/html/new.jpg’);
/* imagick objectを破棄する */
$im->destroy();
echo ‘thumbnail image’;
} catch(Exception $e) {
/* $imageが存在しないと例外が発生する */
echo $e->getMessage();
}
?>
~~~
コメント
[…] 参考) ・Imagickの基本的な使い方 ・PECL::Imagickを使う – m-tagの日記 ・PECL::Imagick で画像リサイズ処理する場合どれ使えばいいか – (0 3 0) ・imagickで画像に文字列を合成する際の位 […]