ImagickDraw::setGravity
(PECL imagick 2, PECL imagick 3)
ImagickDraw::setGravity — テキストの配置時の gravity を設定する
説明
警告
この関数は、 現在のところ詳細な情報はありません。引数のリストのみが 記述されています。
テキストによる注記を行う際に使用するテキスト配置の gravity を設定します。
戻り値
値を返しません。
例
例1 ImagickDraw::setGravity() の例
<?php
function setGravity($fillColor, $strokeColor, $backgroundColor) {
$draw = new \ImagickDraw();
$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setStrokeWidth(1);
$draw->setFontSize(24);
$gravitySettings = array(
\Imagick::GRAVITY_NORTHWEST => 'NorthWest',
\Imagick::GRAVITY_NORTH => 'North',
\Imagick::GRAVITY_NORTHEAST => 'NorthEast',
\Imagick::GRAVITY_WEST => 'West',
\Imagick::GRAVITY_CENTER => 'Centre',
\Imagick::GRAVITY_SOUTHWEST => 'SouthWest',
\Imagick::GRAVITY_SOUTH => 'South',
\Imagick::GRAVITY_SOUTHEAST => 'SouthEast',
\Imagick::GRAVITY_EAST => 'East'
);
$draw->setFont("../fonts/Arial.ttf");
foreach ($gravitySettings as $type => $description) {
$draw->setGravity($type);
$draw->annotation(50, 50, '"' . $description . '"');
}
$imagick = new \Imagick();
$imagick->newImage(500, 500, $backgroundColor);
$imagick->setImageFormat("png");
$imagick->drawImage($draw);
header("Content-Type: image/png");
echo $imagick->getImageBlob();
}
?>
+add a note
User Contributed Notes 2 notes
alan at ridersite dot org ¶
17 years ago
Gravity constants are very useful as they can save having to calculate the placement of variable text strings and font sizes.
For example:
$draw->setGravity (Imagick::GRAVITY_CENTER);
$image->annotateImage($draw, 0, 0, 0, 'The quick brown fox jumps over the lazy dog');
Will horizontally and vertically center the text string.
Note, there are several gravity constants available. See, Constants — Imagick class constants
bcre8ve at gmail dot com ¶
11 years ago
It appears that the GRAVITY constants have an integer equivalent:
NORTHWEST = 1
NORTH = 2
NORTHEAST = 3
WEST = 4
CENTER = 5
EAST = 6
SOUTHWEST = 7
SOUTH = 8
SOUTHEAST = 9