Используя ImageMagick версии 6 или 7, вы можете сделать метку размером, подходящим для любого входного изображения, с полупрозрачным фоном, и скомпоновать ее в нижней части входного изображения, чтобы получить результат, который вы описываете. Вот команда с IM 6, которая делает это ...
convert input.png -set option:size %[w]x \
-fill white -background "#00000080" \
\( label:"This is my text." \
-virtual-pixel background -distort SRT "0.8 0" \
-virtual-pixel none -distort SRT "0.8 0" \) \
-gravity south -composite result.png
, которая использует ширину входного изображения "% [w]", чтобы установить ширину метки. Он устанавливает цвет текста на белый, а фон - полупрозрачный черный, "# 00000080".
В скобках он создает метку. Он использует «искажать SRT», чтобы немного уменьшить метку, чтобы вытянуть ее с краев. Затем он немного уменьшает масштаб метки, чтобы добавить вокруг нее немного прозрачного пространства.
После того, как метка создана, она устанавливает гравитацию на «юг» и накладывает метку на входное изображение. Он заканчивается записью выходного файла.
Используя IM 7, вам нужно изменить «конвертировать» в «магию». Для Windows измените обратную косую черту в продолжениях строки «\» на «^» и избавьтесь от обратных косых черт, которые выходят за скобки.
Отредактировано, чтобы добавить: Обычно вы используете «-size WxH» перед созданием«label:», чтобы ограничить его в определенных измерениях. Вместо этого я использовал «-set option: size», потому что он позволяет использовать процентные экранирования, такие как «% [w]», с IM 6. Таким образом, размеры меток относительно любой ширины входного изображения.