ImagickDraw::setGravity()
(PECL imagick 2.0.0)
Sets the text placement gravity
说明
ImagickDraw::setGravity(int $gravity): bool
Warning本函数还未编写文档,仅有参数列表。
Sets the text placement gravity to use when annotating with text.
参数
- $gravity
GRAVITY_ constant
返回值
没有返回值。
范例
Example #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(); } ?>
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
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