sorl-thumbnail изменить размер и добавить фон - PullRequest
3 голосов
/ 06 апреля 2011

Я использую sorl-thumbnail и хочу изменить размер изображения до 200x200. Допустим, изображение будет 160х200, потому что оно не квадратное. Как я могу добавить белый фон (или границы), чтобы результирующий файл изображения был размером 200x200? Возможно ли это с помощью sorl-thumbnail или я могу добавить эту функцию?

Лучший Жак

Ответы [ 2 ]

3 голосов
/ 21 июля 2011

Я думаю, что немного поздно, но вы можете найти свой ответ в свойстве поля:

Короче:

{% thumbnail something.image "200x200" as image %}
    <img src="{{ image.url }}" style="padding:{{ image|margin:"200x200" }}" />
{% endthumbnail %}

... и не забудьте установить

img { background-color: #fff; }

Данные из документации: http://thumbnail.sorl.net/template.html#margin

0 голосов
/ 06 апреля 2011

Я смущен тем, что вы имеете в виду, если вы измените размер изображения до 200x200, а затем до 160x200. Вы хотите, чтобы изображение было обрезано пропорционально, исходя из его самой длинной стороны? Если это так, вы можете сделать это:

{% thumbnail something.image "200x200" as image %}
    <img src="{{ image.url }}" alt="{{ something.name }}" />
{% endthumbnail %}

, которое должно дать вам поведение, которое вы искали с точки зрения кадрирования.

Вы действительно хотите наложить границу поверх изображения или было бы целесообразно создать границу с помощью CSS?

img {
    background-color: #fff;
    padding: 2px;
}

Если вместо этого вы действительно хотите изменить само изображение, я уверен, что вы можете изменить исходный код (который вы можете разложить на GitHub здесь ), чтобы сделать то, что вам нужно.

Я также могу порекомендовать django-photologue в качестве альтернативы, если вы хотите делать такие вещи, как водяные знаки и т. Д. Я считаю, что это действительно здорово, когда дело доходит до внесения изменений в изображение для всего сайта, по сравнению с sorl.

...