2011-06-23 4 views
2

私はImagick :: setFontをPHPで動かすことができません。 man pageからまっすぐに例を取る:Imagick PHPでフォントを設定するにはどうすればいいですか?

/* Create new imagick object */ 
$im = new Imagick(); 

/* Set the font for the object */ 
$im->setFont("comic.ttf"); 

/* Create new caption */ 
$im->newPseudoImage(100, 100, "caption:Hello"); 

$im->setformat('png'); 
header('Content-type: image/png'); 
echo $im; 

私が手...はっきり漫画サンセリフないhttp://i53.tinypic.com/2d2bn9x.png

hello ...。私は数多くのフォントを試しました。それは決して変化しません。ファイルが存在しない場合は文句を言います。それは "Arial"のような名前を受け入れません。

+3

はスクリプトと同じフォルダにあるフォントファイルですか?パスが正しく設定されていなければ... – tplaner

+0

@evolve、フォントは間違いなく正しい場所にあります。私がそれを動かすと、スクリプトは失敗します。適切な場所にある場合、フォントはレンダリングされますが、フォントは変更されません。 –

答えて

2

私はここに同じような状況を抱えていると私は

http://www.imagemagick.org/discourse-server/viewtopic.php?f=10&t=11937

この記事を見つけた彼らは、FreeTypeライブラリをインストールする必要があると言うが、まだ試していません。

UPDATE

最後に、私はそれを試す機会があったし、それは働きました。

私は

のImageMagick 6.7.6

を使用

Imagick 3.0

Freetypeの2.4.9

Freetypeの-develの2.3.11

Fontconfigの-develの2.8

PHP 5.3.13

2

、あなたがフォントの絶対パスを渡すことを確認する必要があるのsetFontメソッドを使用している:

$im->setFont("/var/www/html/mysite/media/fonts/myCustomFont.ttf"); 

だけ絶対パスを変更するローカルホストの開発に適用されるであろうと同じ。

(これは少し古い質問ですが、私はとにかくそれに答えるために考え出した。)

関連する問題