Monday, November 10, 2008

ImageMagickとPHPで垂直に傾けた文字列を画像の上に描画する

ImageMagickとPHPで垂直に傾けた文字列を画像の上に描画するには、以下のコードを実行します。


<!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>sample664(ImageMagick6.4.2)</title>
</head>
<body>
<?php
/* 画像に文字を垂直に傾けて描画する */
$im = new Imagick('sf.jpg');
$idraw = new ImagickDraw();
/* 塗りつぶし色設定 */
$idraw->setFillColor('#00000080');
$idraw->rectangle(0,0,20,$im->getImageHeight());
$im->drawImage($idraw);
/* フォント設定 */
$idraw->setFont('Tahoma');
/* フォントサイズ設定 */
$idraw->setFontSize(14);
/* 塗りつぶし色設定 */
$idraw->setFillColor('white');
/* gravity設定 */
$idraw->setGravity(Imagick::GRAVITY_SOUTHWEST);
$idraw->setStrokeAntialias(false);
$im->annotateImage($idraw, 14, 0, -90, "San Francisco");

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

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

</body>
</html>

元画像(sf.jpg)





出力画像(sample664a.png)




関連項目
ImageMagickとPHPで、画像に日本語の文字列を描画する
ImageMagickとPHPで、画像からはみ出した影付き文字列を描画する
ImageMagickとPHPで画像上に描画した文字列以外の部分をグレースケールにする

No comments: