Imagick 、マ。「PHP 、ヒ、隍�霖�ホチ犲釥「 、ネ、ニ、箒ハテア、ハ・ェ・ヨ・ク・ァ・ッ・ネサリク�・、・ソ。シ・ユ・ァ・、・ケ、ヌケヤ、、、゙、ケ。」 イ霖�ホ・オ・爭ヘ・、・�鋿ョ、ケ、�ハテア、ハホ网エ、鬢ッ、タ、オ、、。」
ホ�1 Imagick 、ヒ、隍�オ・爭ヘ・、・�ホコ鋿ョ
<?php
header('Content-type: image/jpeg');
$image = new Imagick('image.jpg');
// ノ�、「、�、、マケ筅オ、ヒ 0 、リト熙ケ、�ネ。「
// クオ、ホイ霖�ホ・「・ケ・レ・ッ・ネネ讀ンサ�、キ、゙、ケ
$image->thumbnailImage(100, 0);
echo $image;
?>
SPL 、ェ、隍モ Imagick 、ャ・オ・ン。シ・ネ、ケ、�ス、ホツセ、ホ・ェ・ヨ・ク・ァ・ッ・ネサリク�オ。ヌス、ネヘム、ケ、�ネ。「 ・ヌ・」・�ッ・ネ・�筅ホ、ケ、ル、ニ、ホ・ユ・。・、・�ホ・オ・、・コ、ムケケ、ケ、�ホ、箒ハテア、ヌ、ケ (・ヌ・ク・ソ・�ォ・皈鬢ヌサ」アニ、キ、ソオ遉ハイ霖�ユ・。・、・�イ、ヲ・ァ・ヨヘム、ヒハムエケ、ケ、�隍ヲ、ハ ・ミ・テ・チス靉�、ヌヘュヘム、ヌ、ケ)。」、ウ、ホホ网ヌ、マ。「・�オ・、・コオ。ヌス、ネヘム、キ、ニ、、、゙、ケ。」 、ウ、�マ。「イ霖�ホ・皈ソ・ヌ。シ・ソ、ト、キ、ニ、ェ、ュ、ソ、、、ォ、鬢ヌ、ケ。」
ホ�2 ・ヌ・」・�ッ・ネ・�筅ホ、ケ、ル、ニ、ホ JPG ・ユ・。・、・�ホ・オ・爭ヘ・、・�ホコ鋿ョ
<?php
$images = new Imagick(glob('images/*.JPG'));
foreach($images as $image) {
// 0 、リト熙ケ、�ウ、ネ、ヌ。「thumbnailImage 、ヒ・「・ケ・レ・ッ・ネネ讀ンサ�、オ、サ、ニ、、、゙、ケ
$image->thumbnailImage(1024,0);
}
$images->writeImages();
?>
、ウ、�マ。「カタチ�鋿ョ、ケ、�网ヌ、ケ。」 カタチ�鋿ョ、ケ、�ヒ、マ。「、゙、コイ霖�ソナセ、オ、サ、ニ、ス、ホセ螟ヒウャトエ、ナ、ヘ、゙、ケ。」 、ス、キ、ニ。「、筅ネ、ホイ霖�ネネソナセイ霖�ュ・罕ミ・ケ、ホセ螟ヌケ鄲ョ、キ、゙、ケ。」
ホ�3 イ霖�ホカタチ�ホコ鋿ョ
<?php
/* イ霖�ノ、゚ケ�、゚、゙、ケ */
$im = new Imagick("test.png");
/* イ霖�ホ・オ・爭ヘ・、・�鋿ョ、キ、゙、ケ */
$im->thumbnailImage(200, null);
/* イ霖�ホマネタ�、鋿ョ、キ、゙、ケ */
$im->borderImage(new ImagickPixel("white"), 5, 5);
/* イ霖�ウ・ヤ。シ、キ。「ネソナセ、オ、サ、゙、ケ */
$reflection = $im->clone();
$reflection->flipImage();
/* ウャトエ、鋿ョ、キ、゙、ケ。」、ウ、�螟ヌカタチ�ヒ、ォ、ヨ、サ、゙、ケ */
$gradient = new Imagick();
/* ウャトエ、マ。「イ霖�ネマネタ�、「、�サ、ソ、筅ホ、隍�遉ュ、ッ、ハ、ア、�ミ、ハ、熙゙、サ、� */
$gradient->newPseudoImage($reflection->getImageWidth() + 10, $reflection->getImageHeight() + 10, "gradient:transparent-black");
/* ウャトエ、鄲ョ、キ、゙、ケ */
$reflection->compositeImage($gradient, imagick::COMPOSITE_OVER, 0, 0);
/* ノヤニゥフタナル、゚ト熙キ、゙、ケ。」ImageMagick 6.2.9 ーハケ゚、ャノャヘラ、ヌ、ケ */
$reflection->setImageOpacity( 0.3 );
/* カホ・ュ・罕ミ・ケ、鋿ョ、キ、゙、ケ */
$canvas = new Imagick();
/* ・ュ・罕ミ・ケ、マ。「、ノ、チ、鬢ホイ霖�隍熙篦遉ュ、ッ、ハ、ア、�ミ、ハ、熙゙、サ、� */
$width = $im->getImageWidth() + 40;
$height = ($im->getImageHeight() * 2) + 30;
$canvas->newImage($width, $height, new ImagickPixel("black"));
$canvas->setImageFormat("png");
/* 、筅ネ、ホイ霖�ネカタチ�ュ・罕ミ・ケ、ヒケ鄲ョ、キ、゙、ケ */
$canvas->compositeImage($im, imagick::COMPOSITE_OVER, 20, 10);
$canvas->compositeImage($reflection, imagick::COMPOSITE_OVER, 20, $im->getImageHeight() + 10);
/* イ霖�ミホマ、キ、゙、ケ */
header("Content-Type: image/png");
echo $canvas;
?>
セ螟ホホ网ホスミホマ、マ。「 、ソ、ネ、ィ、ミーハイシ、ホ、隍ヲ、ヒ、ハ、熙゙、ケ。」
、ウ、ホホ网ヌ、マ。「ノチイ霆�、ヒナノ、熙ト、ヨ、キ・ム・ソ。シ・ネヘム、ケ、��ヒ。、篶タ、キ、゙、ケ。」
ホ�4 ・ー・鬣ヌ。シ・キ・逾ト、ュ・ニ・ュ・ケ・ネ
<?php
/* ソキ、キ、、 imagick ・ェ・ヨ・ク・ァ・ッ・ネ、鋿ョ、キ、゙、ケ */
$im = new Imagick();
/* ソキ、キ、、イ霖�鋿ョ、キ、ニ。「、ウ、�ノ、熙ト、ヨ、キ・ム・ソ。シ・ネ、キ、ニサネヘム、キ、゙、ケ */
$im->newPseudoImage(50, 50, "gradient:red-black");
/* imagickdraw ・ェ・ヨ・ク・ァ・ッ・ネ、鋿ョ、キ、゙、ケ */
$draw = new ImagickDraw();
/* "gradient" 、ネ、、、ヲソキ、キ、、・ム・ソ。シ・ォサマ、キ、゙、ケ */
$draw->pushPattern('gradient', 0, 0, 50, 50);
/* ・ム・ソ。シ・螟ホ・ー・鬣ヌ。シ・キ・逾鄲ョ、キ、゙、ケ */
$draw->composite(Imagick::COMPOSITE_OVER, 0, 0, 50, 50, $im);
/* ・ム・ソ。シ・ト、ク、゙、ケ */
$draw->popPattern();
/* "gradient" 、ノ、熙ト、ヨ、キ・ム・ソ。シ・ネ、キ、ニサリト熙キ、゙、ケ */
$draw->setFillPatternURL('#gradient');
/* ・ユ・ゥ・ネ・オ・、・コ、� 52 、ヒタ゚ト熙キ、゙、ケ */
$draw->setFontSize(52);
/* ・ニ・ュ・ケ・ネ、ノイテ、キ、゙、ケ */
$draw->annotation(20, 50, "Hello World!");
/* ソキ、キ、、・ュ・罕ミ・ケ・ェ・ヨ・ク・ァ・ッ・ネ、ネヌ、イ霖�鋿ョ、キ、゙、ケ */
$canvas = new Imagick();
$canvas->newImage(350, 70, "white");
/* ImagickDraw 、ュ・罕ミ・ケセ螟ヒノチイ隍キ、゙、ケ */
$canvas->drawImage($draw);
/* ノ� 1px 、ホケ、マネタ�、ヌイ霖�ホシ�、熙マ、゚、゙、ケ */
$canvas->borderImage('black', 1, 1);
/* ・ユ・ゥ。シ・゙・テ・ネ、� PNG 、ヒタ゚ト熙キ、゙、ケ */
$canvas->setImageFormat('png');
/* イ霖�ミホマ、キ、゙、ケ */
header("Content-Type: image/png");
echo $canvas;
?>
セ螟ホホ网ホスミホマ、マ。「 、ソ、ネ、ィ、ミーハイシ、ホ、隍ヲ、ヒ、ハ、熙゙、ケ。」
・「・ヒ・癸シ・キ・逾� GIF イ霖�犲釥キ、゙、ケ。」
ホ�5 GIF イ霖�ホニノ、゚ケ�、゚、ネチエ・ユ・�シ・爨ホ・オ・、・コハムケケ
<?php
/* ソキ、キ、、 imagick ・ェ・ヨ・ク・ァ・ッ・ネ、鋿ョ、キ、ニ GIF 、ノ、゚ケ�、゚、゙、ケ */
$im = new Imagick("example.gif");
/* チエ・ユ・�シ・爨ホ・オ・、・コ、ムケケ、キ、゙、ケ */
foreach ($im as $frame) {
/* 50x50 、ホ・ユ・�シ・� */
$frame->thumbnailImage(50, 50);
/* イセチロ・ュ・罕ミ・ケ、オ、キ、、ツ遉ュ、オ、ヒタ゚ト熙キ、゙、ケ */
$frame->setImagePage(50, 50, 0, 0);
}
/* writeImage 、ヌ、マ、ハ、ッ writeImages 、ネ、ヲ、ウ、ネ、ヒテ擎ユ、キ、゙、キ、遉ヲ */
$im->writeImages("example_small.gif", true);
?>