[PHP-users 33967] Re: imageMagickのsetFillPatternURLに関して。

TANAKA Masayuki tanakamasayuki @ gmail.com
2008年 8月 12日 (火) 22:17:04 JST


たなかです

> 画像が読めていない可能性に関して下記の様にソースを修正して
> 実行してみました。

違いましたか、、、

手元で確かめようと思ったのですがImagickが動く環境がないので
またまた推測になります

ますは例外の正しい処理の追加と、途中の処理でのエラーチェック
が必要だと思います。

try {
    // 画像を生成する処理
    ...
} catch (ImagickException $e) {
    echo 'ImagickException 捕捉した例外: ',  $e->getMessage(), "\n";
    // 失敗した場合の処理
} catch (ImagickDrawException $e) {
    echo 'ImagickDrawException 捕捉した例外: ',  $e->getMessage(), "\n";
    // 失敗した場合の処理
}

あとは

$idraw = new ImagickDraw();
var_dump($idraw);

$ret = $idraw->pushPattern('tile', 0, 0, $im->getImageWidth(),
$im->getImageHeight());
var_dump($ret);

$ret = $idraw->composite(Imagick::COMPOSITE_DEFAULT, 0, 0,
$im->getImageWidth(), $im->getImageHeight(), $im);
var_dump($ret);

$ret = $idraw->popPattern();
var_dump($ret);

本当はifでちゃんと処理した方がいいですが。。。
この辺もエラーを返すのが例外を返すのかがPHP5だとまだ関数によって違うんですよね
マニュアル見た限り setFillPatternURL は例外返さない風に書いてありますし。。。

たなか


PHP-users メーリングリストの案内