【问题标题】:sorl-thumbnail - resize only if image is bigger then given dimmensionsorl-thumbnail - 仅当图像大于给定尺寸时才调整大小
【发布时间】:2012-10-12 16:41:12
【问题描述】:

如何防止 sorl-thumbnail 放大小于所需缩略图的图像?

当使用 {% thumbnail %} 标签缩放时,图像总是缩放到所需的尺寸,而我希望它只缩放大于该尺寸的图像。

【问题讨论】:

    标签: python django sorl-thumbnail


    【解决方案1】:

    如果你使用ImageField我相信你可以先检查宽度/高度。

    {% if image.width > 100 %}
        {% thumbnail image 100x100 as thumb %}
            <img src="{{ thumb.url }}"/>
        {% endthumbnail %}
    {% else %}
        <img src="{{ image.url }}"/>
    {% endif %}
    

    【讨论】:

    • 这是正确的。如果您想将宽度/高度设置为 maximums 而不仅仅是图像的实际大小,那么您必须 省略crop 参数。如果进行了任何裁剪,它会将其大小精确到指定的尺寸(即使它是 crop="noop"。这让我有一阵子绊倒。)
    【解决方案2】:

    为什么不使用 sorl-thumbnail 内置的 upscale 过滤器呢?

    {% thumbnail image "1500x1500" upscale=False as thumb %}
    

    upscale 的默认值为 True。将其设置为 False 以获得所需的行为。

    【讨论】:

      猜你喜欢
      • 2015-01-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-10
      • 1970-01-01
      • 2011-07-31
      • 2015-06-28
      相关资源
      最近更新 更多