Надписывание изображений для Picasa Web Albums

Автор: Дмитрий Канн Чтение на 2 мин
Этот пост  на английском

Несколько переработанная и переведённая моя статья с Хабра.

Пролог

Люди, публикующие изображения в Интернете, наверняка задумывались о том, чтобы хоть как-то обозначить своё авторство.

Один из самых очевидных способов — добавлять на изображения надпись с указанием вашего веб-сайта, имени, копирайта или копилефта. Для этого домохозяйка откроет любимый графический редактор, выберет инструмент «Текст» и напишет красивыми буквами послание будущим поколениям.

Image

Однако если изображений много, процесс становится весьма нудным. А мы, поэты компиляции и скульпторы кода,— творческие личности, ужасно не любим рутины.

Вторая рутинная операция фотографа-блогера-графомана — загрузка изображений на уютный хостинг.

Для автоматизации всего этого давно придумано множество инструментов под все мыслимые операционные системы. Но у всех этих инструментов есть одна проблема: они делают это так, как их создателю представлялось правильным, и любые отклонения вновь приводят к уйме ручной работы.

Для реализации вышеперечисленных задач я написал простой скрипт, который легко подстраивается под новые неожиданные нужды.

Как пользоваться

Скрипт (назовём его picasa-upload) работает на bash и вызывается следующим образом:

picasa-upload [options] picture_dir [album_name]

Здесь:

  • picture_dir — каталог с изображениями. Скрипт найдёт все изображения с расширениями .jpg и .png, в том числе и во вложенных каталогах.
  • album_name — наименование фотоальбома Picasa Web Albums. Обязателен, если не указано -U.
  • options — любое сочетание следующих опций:
    • -D — не удалять файл с надписанным изображением.
    • -R — не уменьшать изображение до предопределённого размера (полезно, например, для панорам).
    • -U — не загружать изображения в Picasa (например, если вы просто хотите надписать изображения, перед тем, как отдать кому-то). Автоматически подразумевает -D.
    • -s — использовать «маленькую» версию надписи (в случае надписывания небольших изображений).

Например:

picasa-upload -DRs "/home/vassily/Pictures/Holiday 2011" "Holiday 2011"

В самом начале скрипта задаются константы: максимальный размер изображения, пути к обычной и «маленькой» надписи и наименование аккаунта в Picasa Web Albums.

Надпись имеет смысл сделать в PNG с прозрачным фоном. Скрипт накладывает её с opacity 90% в правый нижний угол. Всё это можно просто изменить параметрами, указанными для composite.

Требования

  • Необходимы Linux и bash.
  • Необходимо наличие ImageMagick (sudo apt-get install imagemagick, или как у вас там это делается).
  • Необходима установленная googlecl.
  • getopt должен поддерживать параметры с пробелами. Иными словами, getopt -T; echo $? должно вывести ровно 4. Ни больше, ни меньше.

Файл скрипта

Посмотреть код | Скачать с GitHub

Подписаться на обновления блога:

Комментарии

Поделиться: