Sunday, May 10, 2009

ImageMagickとPHPで画像を変形させる

Imagickで画像を変形させるには、以下のコードを実行します。


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ja"
xml:lang="ja" dir="ltr">
<head>
<title>sample1104(ImageMagick6.5.2)</title>
</head>
<body>
<?php
$im = new Imagick("sf.jpg");
$im->setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);
$im->setImageMatte(true);
$points = array(100,0, 110,20,
200,100, 190,110,
100,200, 90,190,
0,100, 10,90,
0,200, 0,180);
// ShepardsDistortion=14 in distort.h
$im->distortImage(14, $points, false);

$im->writeImage('sample1104a.png');

$im->destroy();
?>
<img src="sample1104a.png" /><br />

</body>
</html>


元画像(sf.jpg)


出力画像(sample1104a.png)
Imagickで変形させた画像

関連項目
ImageMagickで画像を変形させる (convertコマンドによる同様の処理)
ImageMagickとPHPで画像を扇形に変形させる
WindowsでImageMagickをPHPから使用するための設定

No comments: