首页 > 解决方案 > 浏览器图像调整大小,优于最高 PIL 质量

问题描述

前言

我正在将来自 Django 后端的图像显示为一个26 x 26px大小合适的(css)<img>标签。

我可以通过两种方式做到这一点:

  1. 将后端(枕头)的大小调整为26x26(裁剪以保持纵横比)
  2. 发送完整尺寸的图像并让 CSS 进行尺寸调整

问题

使用LANCZOS调整大小并将结果保存为 100% 质量 Jpg 的算法,显示的图像看起来比浏览器调整大小的图像差得多。

在此处输入图像描述

为什么会这样,有什么办法可以解决吗?


编辑:在 Retina 显示器上进行测试

编辑:Bicubic 看起来与 Lanczos 非常相似

在此处输入图像描述

标签: pythonimagepython-imaging-library

解决方案


这篇文章[1]说 Retina 显示器(高 DPI 显示器)将尝试在同一区域显示 2 倍以上的像素。也以像素为单位测量的区域,即您在 CSS 中实际声明的像素。

所以这就是我的困惑的来源。解决方案是生成两倍于显示大小的缩略图。


推荐阅读