ScotlandPHP

Imagick::drawImage

(PECL imagick 2.0.0)

Imagick::drawImage現在の画像上の ImagickDraw オブジェクトをレンダリングする

説明

bool Imagick::drawImage ( ImagickDraw $draw )

現在の画像上の ImagickDraw オブジェクトをレンダリングします。

パラメータ

draw

画像をレンダリングする描画操作。

返り値

成功した場合に TRUE を返します。

add a note add a note

User Contributed Notes 2 notes

up
1
blah at blub dot com
8 years ago
If your imagick lib begins to say: "Non-conforming drawing primitive...", it could be that your locale are not correctly set. please locate all your setlocale and kill them temporary so you could check it that would solve the problem.
up
0
sualk at lednew dot de
9 years ago
the ImagickDraw (v 2.2.0) seems to disharmonise with PHP-GTK2 (v 2.0.1).

The rendering of an ImagickDraw object on the current image fails (resp. results in a flat image without drawings), if php_gtk2.so is loaded.

Code to reproduce the failure:

#!/usr/bin/php5
<?php
dl
("php_gtk2.so"); // comment this for a second try

$string = "Hello world!";

$im = new Imagick();
$draw = new ImagickDraw();

$draw->setFillColor(new ImagickPixel('blue'));

$draw->setFontSize(28);

$metrix = $im->queryFontMetrics($draw, $string);

$draw->annotation(0,25,$string);

$im->newImage($metrix['textWidth'],$metrix['textHeight'], new ImagickPixel('white'));
$im->drawImage($draw);
$im->borderImage(new ImagickPixel('black'), 1, 1);
$im->setImageFormat('png');

$im->writeImage("./test.png");
?>
To Top