2012-12-01 74 views
0

我想疊加兩個文本(一個是較大的和不同的顏色,這將最終成爲中風)ontop的圖像,但我得到的結果是一個混亂的結果。Imagemagick將兩個文本疊加在圖像的頂部ontop上?

我使用

convert front2.jpg 
\(-pointsize 90 -font Helvetica-Narrow-Bold -fill black -background none -stroke black -strokewidth 15 label:"Hello World World" -virtual-pixel transparent -distort arc 160 \) -gravity north -geometry +0+12 -compose over -composite front5.jpg 
\(-pointsize 90 -font Helvetica-Narrow-Bold -fill white -stroke none -background none label:"Hello World World" -virtual-pixel transparent -distort arc 160 \) -gravity north -geometry +0+10 -compose over -composite front5.jpg 

我怎麼能做到這一點,得到正確的結果呢?

回答

0

我剛剛意識到我錯過了你的帖子;這些示例將創建陰影效果。無論我嘗試什麼,我都無法得到 - 衝程去工作! 更新 - 筆畫將工作,但不是我的本地設置;最後一個例子有中風。

這對我的作品,但速度很慢:

exec("convert image.jpg -thumbnail 800x800 temp.png"); 

$cmd = " temp.png \(-pointsize 90 -font Helvetica-Narrow-Bold -fill black -background none label:\"Hello World World\" -virtual-pixel transparent -distort arc 160 \) ". 
" -gravity north -geometry +0+12 -compose over -composite ". 
" \(-pointsize 90 -font Helvetica-Narrow-Bold -fill white -background none label:\"Hello World World\" -virtual-pixel transparent -distort arc 160 \) ". 
" -gravity north -geometry +0+10 -composite "; 

exec("convert $cmd text_circle.png"); 

這在一半的時間完成,但有一個問題,即文本比圖像大!做一些計算來減少$ size [0]和$ size [1]就可以解決這個問題。

$size = getimagesize("temp.png"); 
$cmd = " temp.png \(\(-size $size[0]x$size[1] xc:none -fill black -font Helvetica-Narrow-Bold -pointsize 90 -stroke black -strokewidth 4 -gravity north -annotate +0+0 \"Hello World World\" -font Helvetica-Narrow-Bold -fill white -annotate +3+3 \"Hello World World\" \) -virtual-pixel transparent -distort arc 160 \) ". 
" -composite "; 
exec("convert $cmd text_circle1.png");