2017-02-07 9 views
0

と淡色表示キャプション私はIMは自動的に最高のフォントサイズを選択すると、画像に淡色キャプションをオーバーレイするイメージの魔術を使用しています:画像魔術:ボーダー

convert -background '#0008' -fill white -geometry +0+330 -size 370x60 caption:$title $image +swap -composite $imageOutput 

私の問題は、周りに十分なスペースがないことですテキスト、私はいくつかの "パディング"を追加したいと思います。私は通常、-borderオプションでそれを行いますが、これを上記のコマンドに追加すると、キャプションはもはやぼかされません。

テキストの周囲に十分な余裕を持って淡色のキャプションを作成するソリューションがありますか?

答えて

2

私には解決策がありますが、半透明の背景を延長したり境界を接したりすることに問題があったため、ちょっとしたことがありました。最終的に、私は黒の背景にキャプションを構築し、黒でそれを縁取り、私はその後、アルファチャンネルを微調整:

convert -background black -bordercolor black -fill white \ 
    -size 370x60 caption:"This is the title"    \ 
    -trim -border 20 -channel A -fx '(lightness/2)+.5' \ 
    -geometry +0+200 background.gif +swap -composite result.png 

enter image description here

だけトリッキーな部分が-channel A -fx ...あります。最初の部分は、アルファ/不透明チャンネルのみに影響を及ぼしていることを意味します。 0.5は、すべてのピクセルが少なくとも50%不透明になることを意味し、(lightness/2)は、0.5+(1/2)が1になるため、完全に不透明になる絶対的に白いピクセル、つまりレタリング(1の明度を持つ)を意味します。この点は、ある程度、文字の端にアンチエイリアスを残すことです。

+0

わかりやすく、レタリングが透明になるのは私がこの解決法を使用することを妨げていたことです。 – Sulli

+0

fxを三角で囲むだけで、文字が透明にならないようにします。 '-channel A -fx 'u == 1?(明度/ 2)+ .5:u'' – emcconville

関連する問題