ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: watermark patch





6 февраля 2013 г., 22:44 пользователь Михаил Монашёв <postmaster@xxxxxxxxxxxxx> написал:
Здравствуйте, Trurl.

Функционал  весьма  полезный.  Я  б,  например,  на  картинки, которые
сторонние  сайты  запрашивают,  вставлял бы водные знаки. А сейчас 403
выдаю.

Но  хоть  я  не  сишник,  но  подозреваю,  что сделано не самым лучшим
образом.  При  каждом наложении водного знака зачем-то делается заново
открытие  файла с водным знаком, чтение его с диска (про aio промолчу)
и  создание  изображения.  Всё это можно при старте nginx-а делать или

Разница не слишком велика, при интенсивной нагрузке он все равно будет в буффере системы жить, а зря занимать память тоже не охота. Да и лень )

 
делать   единожды   при   первой   потребности,   а  потом  много  раз
использовать.  Если  водный знак может меняться, то повесить вотчер на
изменения  файла  и по событию перечитывать его. Зачем-то (подозреваю,
что  это  нужно,  чтобы  иметь  изображение нужного формата/цветности)
делается  аж  три копирования изображений, что наверняка сильно грузит
процессор, если картинка 10 метров, например.

Увы, это единственный известный мне способ не потерять альфаканал при совмещении.
А красивые ватермарки без него не сделать. Да и все равно подразумевается что там стоит expires 40d; минимум и на внешнем кольце все кешируется..
 

По мелочи: нельзя конфигурировать отступы от края изображения, задавая
их  в  пикселях  или  процентах  ширины  исходного  изображения. Может
кому-то будет полезно влепить водный знак по центру, кстати. И бывает
полезно замостить водным знаком всё изображение: http://i38.beon.ru/56/31/2483156/paid-avatars/95391b8e2d23c38f93a5559c9a6a22c3.gif

Угу, а еще на лету генерировать ватермарки из текста, отдаваемого субреквестом; менять exif картинки; подбирать из набора подходящую ватермарку под пропорции картинки; автоматически подбирать место для ватермарки исходя из динамики цвета на картинке (причем как искать однотонные места, так и наоборот, по выбору)
Короче я сам могу еще много придумать, вот только времени нет это все реализовывать ;)
 

Вопросы:  как  работает,  если  изображение  с  водным  знаком  больше
исходного  изображения.  Или исходное изображение меньше, чем 10х10? И
что с анимированными гифами?

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

--
С уважением,
 Михаил                          mailto:postmaster@xxxxxxxxxxxxx

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.