2017-10-15 11 views
0

私はKindleカバーにテキストを入力しています。現在convertはレンダリングしたテキストの先頭にcaption:を取り込んでいるようです。所望に応じてなぜキャプションのような振る舞いを引き起こすのではなく、「キャプション:」がレンダリングされた文字列に含まれていますか?

convert kindle-cover.jpg -font "Georgia" -pointsize 150 -size 320x -gravity South -annotate +0+100 caption:'C.J.S. Hayward' workbench.jpg 

テキストは、画像の底部近くにセンタリングされ、フォントサイズのいずれか、完璧ではない:本呼び出しは読み込みます。しかし、私はcaption:,-captionなどのようないくつかの呼び出しを試みましたが、私はキャプションのような振る舞いを得ていないようです。

カバーの著者名とは関係ありませんが、ユーザーが入力したタイトルをラップする必要がある場合は、ソフトラッピングや動的リサイズなど、優雅なキャプションのような動作を示すタイトルを許可します。

ラベル、ビヘイビアの代わりにキャプションを取得するには、どうすればできますか?

おかげで、

--UPDATE-- @Bonzo

は、私は私のImageMagickのバージョンを提供示唆しました。バージョンは次のとおりです。

Version: ImageMagick 6.8.9-9 Q16 x86_64 2017-07-31 http://www.imagemagick.org 
Copyright: Copyright (C) 1999-2014 ImageMagick Studio LLC 
Features: DPC Modules OpenMP 
Delegates: bzlib cairo djvu fftw fontconfig freetype jbig jng jpeg lcms lqr ltdl lzma openexr pangocairo png rsvg tiff wmf x xml zlib 

マシンは現在のバージョンのLinux Mintを実行しています。

Sample image

+0

を行うことができます。 – EJoshuaS

+0

私はキャプション付きの画像を作成し、その画像をカバーに追加する必要があると信じています。あなたのIMバージョンを確認したいなら、誰かがあなたの問題を助けることができると確信しています。 – Bonzo

+0

@EJoshuaS私はhttp://www.imagemagick.org/Usage/text/#captionの大部分を実験的な部分まで読んだ。ドキュメントを読むように教えてくれるだけであれば、リンクを提供できれば幸いです。 (私はちょうど 'convert --help'を実行して、別のアプローチを見て、試してみましたが、うまくいきませんでした)。 – JonathanHayward

答えて

1

あなたは-annotateとキャプションの両方を使用しないでください:ImageMagickの中に同じコマンドラインで。どちらかを使用してみてください。たとえば、以下の3つの方法があります:-annnotate、label:およびcaption:より小さなフォントサイズ。イメージに直接書き込む。 label:とcaption:オリジナルの画像に合成する必要がある独自の別の画像を作成します。

convert kindle-cover.jpg -font "Georgia" -pointsize 72 -gravity south -annotate +0+100 'C.J.S. Hayward' workbench.jpg 

convert kindle-cover.jpg \(-size 320x -background none -font "Georgia" -gravity south label:'C.J.S. Hayward' \) -gravity south -geometry +0+100 -compose over -composite workbench.jpg 

convert kindle-cover.jpg \(-size 320x -pointsize 72 -background none -font "Georgia" -gravity south caption:'C.J.S. Hayward' \) -gravity south -geometry +0+100 -compose over -composite workbench.jpg 


EDIT:後者は最初の2ラップではなくなります。だからあなたはあなたが望む幅に320xを設定する必要があります。 bonzoが言ったように、IM 6では、入力イメージのサイズをテストし、使用したいものの割合を指定する必要があります。たとえば、IM 6でこの方法で実行する必要があります。テキストの幅をイメージの幅の1/3にしたいとします。 UNIXの構文では、あなたがどうなる:IM 7では

ww=`convert kindle-cover.jpg -format "%[fx:w/3]" info:` 

convert kindle-cover.jpg \(-size ${ww}x -pointsize 72 -background none -font "Georgia" -gravity south caption:'C.J.S. Hayward' \) -gravity south -geometry +0+100 -compose over -composite workbench.jpg 


を、あなたはあなたがタグの説明をお読みください

magick kindle-cover.jpg \(-size "%[fx:w/3]x" -pointsize 72 -background none -font "Georgia" -gravity south caption:'C.J.S. Hayward' \) -gravity south -geometry +0+100 -compose over -composite workbench.jpg 
+1

V6で次元を動的に取得するには、書式のようなものを使用して変数に保存する必要があります。 V7では、すべてを1行で実行できます。 – Bonzo

関連する問題