Как пакетно вставить текст на фотографии?

Как пакетно вставить текст на фотографии?

Я работаю на Linux/Ubuntu и мне интересно, какой самый простой способ добавить текст об авторских правах к нескольким изображениям в формате JPEG.

решение1

ImageMagick может добавлять текст к изображениям. Вероятно, он предустановлен в Ubuntu. Пример использования с их сайта:

  convert dragon.gif -gravity south \
          -stroke '#000C' -strokewidth 2 -annotate 0 'Faerie Dragon' \
          -stroke  none   -fill white    -annotate 0 'Faerie Dragon' \
          anno_outline.jpg

Это помещает текст в нижнюю часть dragon.gif, создавая новое изображение anno_outline.jpg. Существует множество текстовых эффектов, о которых вы можете прочитать в convertдокументации.

Если вы обрабатываете только пару изображений, вам не нужен пакетный файл, но если вы обрабатываете больше, например, целый каталог, вы можете просто заключить команду в цикл for-do:

for FILE in *.jpg; do convert $FILE -gravity south -annotate 0 'copyright' new_$FILE; done

решение2

Взгляните на Image Magick и егокоманда преобразования. Это будет что-то вроде:

convert -caption "(c) 2012 Mr. Photographer" original.jpg copyrighted.jpg

(Более глубокое изучение документации Image Magick покажет способы сделать это массово, так что вы можете указать что-то вроде *.jpgдля входных файлов, а выходные файлы могут быть вариантом исходного имени файла, так что a.jpg станет a-copyright.jpg, b.jpg -> b-copyright.jpg и т. д.)

Связанный контент