Используя ImageMagick, создайте заполненное пространство и напишите дату изменения или создания на этом заполненном пространстве. - PullRequest
0 голосов
/ 11 июля 2020

Я хочу создать под изображением черное пространство, где я хотел бы написать на нем дату изменения или создания файла.

Я использую приведенную ниже команду imagemagick, которая не работает так, как я бы например.

Создает черное пространство, но над изображением. Дата пишется не на черном фоне.

  for pic in DSC*.*; do convert -background black -extent 0%x0%+0+120 -pointsize 24 -fill white -undercolor '#00000080' -gravity SouthWest -annotate 0%x0%+10+20 "$(stat -c '%y' "$pic")" "$pic" "${pic//.*}-d.jpg"; 

готово;

1 Ответ

0 голосов
/ 11 июля 2020

Я нашел ответ!

Это исправило. Он создает черный отступ под изображением. Затем он записывает измененную дату имени файла на этом заполненном черном пространстве.

  for pic in DSC*.*; do convert -background black -gravity NorthWest -extent 0%x0%+0+120  -pointsize 32 -fill white -undercolor '#00000080' -gravity SouthWest  -annotate  +100+50 "$(stat -c '%y' "$pic")" "$pic" "${pic//.*}-d.jpg"; done;

Вся моя команда для

  1. Дата записи в имени файла
  2. добавить водяной знак дополнительно пробел
  3. Добавить дату изменения в качестве информации об изображении на черном фоне. это:
for pic in DSC*.*;        do exiftool "-FileName<CreateDate" -d  "${pic//.*}_%Y%m%d_%H%M%S.jpg" "$pic"; done;
      for pic in DSC*.*;        do convert -background black -gravity NorthWest -extent 0%x0%+0+120  -pointsize 24 -fill white -undercolor '#00000080' -gravity SouthWest  -annotate  +100+50 "$(stat -c '%y' "$pic")" "$pic" "${pic//.*}-d.jpg"; done;
      for pic in DSC*-d.*; do composite -dissolve 100% -gravity SouthEast /home/elias/Data/PHOTOS/watermark_0.png "$pic" "${pic//.*}-marked.jpg"; done
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...