2009-06-27 30 views
1

GDの関数を取得する方法はありますか?imagefilledarc()'s PHP ImageMagickを使用していますか?私は周りを見回してきましたが、これまでのところ満足のいく解決策は見つかりませんでした。私は透明性をサポートし、それを使ってパイを描きたがっています。PHP ImageMagickを使って絵を描く

答えて

0

この記事は、すべての今してのGooglerに見舞われます、と私はグラムべき考え出し、有効な答えを持っていないので、いくつかのヒント。 Imagine(https://github.com/avalanche123/Imagine)という優れたライブラリがあり、同じ呼び出しを使用して最も人気のあるPHPイメージライブラリ(ImageMagick、GraphicsMagick、およびGD)をサポートしています。

APIにはpieSlice関数(http://imagine.readthedocs.org/en/latest/api/Draw/drawer_interface.html#Imagine\Draw\DrawerInterface::pieSlice)が含まれています。その機能のソースはhttps://github.com/avalanche123/Imagine/blob/develop/lib/Imagine/Imagick/Drawer.php#L219

1

あなたの最善の策は、ImageMagick :: Drawを使うことです。 arcコマンドを持っています。中心を指定する代わりに、境界矩形を指定します。塗りつぶしを設定する前に、塗りつぶしを終了するためにコマンドを追加するだけです。 (あなたはピクセルでそれをピクセルを描画する関数を作成する場合を除き)

http://us.php.net/manual/en/function.imagickdraw-arc.php

+0

です。同じように動作しません。このコマンドは、基本的に境界ボックス内の楕円を行い、指定された度数の間の線を切り取り、その1つを削除します。 – runfalk

1

は、私の知る限りのImagickDraw ::はアークはそれを行うための唯一の方法です。しかし、gdと同じように動作させるには、軽微な変更を加えるだけです。例えば、この:

imagearc($image, $cx, $cy, $width, $height, $start, $end, $color); 

がこれに相当するべき(私はそれをテストしていません):

ImagickDraw::setStrokeColor($imageMagickColor); //I don't remember how to allocate the color 
ImagickDraw::arc($cx-$width/2, $cy-$height/2, $cx+$width/2, $cy+$height/2, $start, $end); 
1

が正確に何を求めていたが、それは、Googleのチャートで円グラフを描画するのは簡単ですAPI http://code.google.com/apis/chart/

alt text

+0

それは私が欲しいものではありません。とにかくありがとう。 – runfalk

関連する問題