Ответ Эрика Л. правильный - +1 от меня за это! -- но -annotate не дает вам большого контроля над внешним видом текста.
Если вы ищете красоту, то лучше выберите что-то, что использует -composite. Вы можете использовать команду обмена мгновенными сообщениями, чтобы сначала создать наложенное изображение (в котором используется полупрозрачный фон), а затем наложить его на исходное изображение.
Вот пример того, как это сделать с -composite вместо -annotate, используя скриптовый подход, который обрабатывает каждый файл PNG в текущем каталоге. Этот даже автоматически адаптирует размер шрифта и вписывает его в доступную «ширину * 90%» — это сценарий Bash (см. комментарии для эквивалента Win):
for img in *.png; do
width=$(identify -format %W ${img})
width=$(( ${width} * 9 / 10 ))
convert \
-background '#0008' \
-gravity center \
-fill white \
-size ${width}x100 \
caption:"${img}" \
"${img}" \
+swap \
-gravity south \
-composite \
"with-caption-${img}"
done
Ниже приведен пример иллюстрации для одного оригинала и соответствующего вывода:

!
Вот команда, которая использует -annotate, пытаясь установить несколько вещей помимо параметров по умолчанию:
for img in so#12231624-right.png; do
convert \
"${img}" \
-fill red \
-undercolor '#0008' \
-pointsize 24 \
-gravity south \
-annotate +0+5 "${img}" \
"with-annotate-${img}"
done


person
Kurt Pfeifle
schedule
05.10.2012