A kind of magick

Jan 04, 2008 05:33



Техпроцесс конвейерной подготовки фотографий к вебликации (будем считать, что я сам придумал это слово, хотя я сделал это не первым, о чем услужливо рассказывает Яндекс) исторически складывался у меня довольно кривым. Любимый и ненаглядный фотошоп не умеет (я не смог) в пакетном режиме ресайзить "вписывая в заданные размеры", т.е. вертикальные и горизонтальные кадры нужно обрабатывать отдельно. Потому для ресайза был приспособлен айсидиси. Но любимый и ненаглядный айсидиси не умеет делать такие рамочки как мне нравится (ну да, я не смог). Потому для рамочек использовался-таки фотошоп. Но они оба не умеют присобачивать подпись так, как мне нравится. И долгое время я мирился с этим, ставя подпись руками на те фотографии, которые проходили ручную обработку, и оставляя остальные кадры сиротливыми безименцами.
     Но, начитавшись уже даже в Компьютерре про чудесный "фотошоп из командной строки", я решил попробовать прикрутить к моему фотофранкенштейну еще и ImageMagick. И прикрутил. У фотофранкенштейна стало 3 ноги (гусары, молчать!), а мои фотографии (те, что не обрабатывались вручную) обзавелись одинаковолевонижнеугольной подписью.
     Однако же время идет, жизнь ставит передо мною новые задачи, шило в заднице раскалилось до красна прошел месяц и мне захотелось "переписать" все три ноги фотофранкенштейна под ImageMagick. Задумано - сделано. Всего за каких-то 6 часов я смог перекрутить свои извилины в *nix-style и записать вызовы утилит из этого пакета в нужном для FAR виде (этот консольный файловый менеджер, который так сильно и так ошибочно похож издалека на старые добрые "синие таблицы", является наиболее близкой к голове частью фотофранкенштейна) ресайз, шарп, рамочку, подпись. Теперь все работает так же долго, как и раньше, но уже без моего вмешательства в процесс.
convert foto-in.jpg[1000x1000] -shave 5x5 -colorspace Gray -threshold -1 +matte -bordercolor #000000 -border 5 -gaussian-blur 0x4 png:- | convert ( foto-in.jpg -adaptive-resize 1000x1000 -unsharp 0.1x0.5 foto-sign.png -gravity SouthWest -composite ) ( foto-in.jpg[1000x1000] -level 200,255,0.5 ) -mask - -composite -shave 2x2 -bordercolor #888888 -border 1 - | convert - -bordercolor #000000 -border 1 -quality 80 | exiftool - -thumbnailimage= -icc_profile= -copyright="(c) Roman Orlov, http://ornic.livejournal.com" >foto-out.jpgP.S. Рамочка сопротивлялась дольше всего.
P.P.S. Она получилась все равно немного не такой как в фотошопе. И в результате именно рисование рамочки занимает основное время. Особенно медленно реализовано размытие по Гауссу.
P.P.P.S. Да, саму подпись тоже можно генерировать каждый раз силами ImageMagick, а не брать из файла, но шило уже остыло я решил поберечь свой мозг и глаза.

лытдыбр

Previous post Next post
Up