Пополняя свою коллекцию полезных скриптов, в добавок к Javascript-у, YAML-скрипту и Listing-cкрипту сегодня написал еще один Watermark-скрипт. Как понятно из названия, он берет все jpg файлы из текущей папки и добавляет к ним одно изображение. Очень удобно для пакетной обработки файлов: можно поставить на все изображения URL вашего сайта, чтобы люди знали откуда сие добро взято. Код простой, работает консольно без всякого вывода, однако для его запуска потребуется RMagick, а следовательно и ImageMagick тоже. Если вы используете нормальный сервер или одну из правильных OS, то проблем возникнуть не должно.
require 'RMagick'
wtm_file = 'watermark.png'
wtm = Magick::Image.read(wtm_file).first
Dir.open('./').each do |file|
next if file[-4..-1] != '.jpg'
next if file =~ /^\.\.?$/
image = Magick::Image.read(file).first
image.composite!(wtm, Magick::CenterGravity,
Magick::HardLightCompositeOp)
out = file.sub(/\./, "-wm.")
image.write(out)
end
Буду благодарен любым комментариям.











2 Users Responded in " Еще раз для популяризации Руби "
Ну если прям любым комментам, то тогда кодир жжош пишы исчо! :D
Прекрасный мужчина прекрасно поработал.
(специально из-за нервного опуса над огромной кнопкой не указываю обратный адрес)
Leave A Reply Here