Re: image_filter_jpeg_quality не работает без указания image_filter rotate|resize|crop

Валентин Бартенев ne at vbart.ru
Sun Oct 7 12:41:40 UTC 2012


On Monday 01 October 2012 20:05:40 mxs kolo wrote:
>  Здравствуйте.
> 
> > quality_only не очень подходящее название для опции image_filter.
> > 
> >  1. crop | resize | test - глаголы, означающие действие, производимое над
> >  
> >     изображением, а quality_only - нет.
> 
> Есть еще одна проблема.
> Она в том,  что фильтры  resize, crop и rotate принимают параметры
> сразу в строке, а
> convert - нет.  Ему нужны дополнительные указания.

Потому, что эти параметры имеют отношение только к этим фильтрам, в то время,
как такие параметры как jpeg-сжатие, резкость и пр. применяются к результату 
независимо от фильтра.

>  Если-бы можно  было указать несколько image_filter и они-бы
> применялись в заданном порядке, то вся эта неопределенность в
> синтаксисе ушла.

Какая именно неопределенность? Нет смысла делать сначала resize, а потом
crop, потому, что resize - это сравнительно дорогая операция, цена которой 
пропорциональна размеру изображения. quality и sharp тоже имеют смысл только
по отношению к результату всех преобразований. Поэтому порядок тут может быть 
только один. Следовательно единственное, что тут может иметь смысл - это 
возможность применять crop и resize одновременно.

>  Например так:
>         image_filter  resize 100 200;
>         image_filter  convert  quality=55 sharp=25 transparency=on;
>          или
>         mage_filter  convert  55,25,on;
>         image_filter rotate 90;

В данном случае я вижу лишь попытку заменить нескольких директив с простым 
синтаксисом на одну с очень сложным. Это явно ухудшает читабельность.

Также стоит иметь ввиду, что nginx старается следовать декларативному стилю 
конфигурации.

>  Но это явно будет патч больше что я прислал. Я пока не смотрел как
> сделать цепочку таких фильтров.

Please note, вероятность принятия патча в код nginx обратно пропорциональна 
размеру патча.

--
Валентин Бартенев


Подробная информация о списке рассылки nginx-ru