プロが教えるわが家の防犯対策術!

Imagickについての質問です。

ImagickとPHPで文字列を描画した際、添付画像のように文字縁取り(黄色)がずれ、文字色(黒)が少しはみ出してしまいます。
ソースは以下の通りです。

$img = new Imagick();
$idraw = new ImagickDraw();
$img->newPseudoImage(170,50, "xc:none");
$idraw->setFillColor('#ffffff');
$idraw->setGravity(Imagick::GRAVITY_CENTER);
$idraw->rectangle(0,0,170,50);
$idraw->setFont('./font/junegull.ttf');
$idraw->setFontSize(40);
$idraw->setFillColor('#000000');
$idraw->setStrokeWidth('1');
$idraw->setStrokeColor('#ffff66');
$idraw->annotation(0, 0, 'Imagick');
$img->drawImage($idraw);
$img->writeImages('img/sample.gif',TRUE);

これをどうにかして文字色がはみ出さないようにしたいのですが、良い方法はないでしょうか。
どなたかご教授願います。

「Imagickについての質問です。」の質問画像

A 回答 (1件)

今手元に再現できる環境が無いので勘になりますが、


FontSizeか、StrokeWidthあたりを調整することになりそうです。

なお、そのような袋文字を描画する時は
1. フチだけを描画
2. 塗りだけを描画
のように2段階の手順が必要になるかと思います。
#StrokeWidthを大きくしたら文字の内側方向にも太く描画されてしまいます

同時に描画する場合どちらにしろ難がありますので
一度こちらの方法で進めてみてはいかがでしょうか。
    • good
    • 0
この回答へのお礼

2つに分けて描画することにしました。

ご回答ありがとうございました。

お礼日時:2010/08/25 11:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!