php - 缓存和调整图像大小而不缩小或拉伸(stretch)?

标签 php jquery image image-processing

Facebook 和其他图像密集型网站如何在不缩小或扭曲缩略图的情况下保持整个图像的缩略图大小?

这些拇指是否是原始图像的裁剪版本并已存储,因此当单击拇指时,它们会引用完整尺寸的图像。

如果我只是尝试将图像限制在 img 标签中的预设大小,我的图像就会被拉伸(stretch)或缩小。

理想情况下,我想裁剪每个图像以适合预设尺寸而不扭曲纵横比。如果这可以即时完成,这是否是处理大量图像的有效方法?

最佳答案

considered bad practice使用 HTML 标记或 CSS 样式调整图像大小。放大它们意味着质量差,缩小它们意味着您的用户必须下载比所需更大的文件,这会影响速度。

有一些库是为几乎所有语言或框架的图像调整大小和缓存而构建的。它们大多还具有裁剪功能,以保持标准的纵横比。对于 PHP,请查看 phpThumb ,这是基于GD/ImageMagick的。

调整大小后的图像版本保存在缓存文件夹中,因此不需要在每次请求图像时重新生成它们。这样,性能几乎与提供静态文件一样好。唯一的开销是检查缓存中是否存在调整大小的版本。

关于php - 缓存和调整图像大小而不缩小或拉伸(stretch)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11267229/

相关文章:

php - 如何在 php 中列出所有国家及其州/省?

javascript - 如何在 View MVC 中更改 img src

php - 您如何验证用户尝试注册的电子邮件尚未被使用? [PHP 和 MySQL]

PHP/MySQL 同一列中有多个值

php - 如何通过电子邮件向所有用户发送用户特定信息。

打印到屏幕的顺序的 Javascript 问题

javascript - Ajax 验证问题

javascript - 使用新 URL 打开模式弹出 div(如 Instagram)

android - 在android中用点创建图像

javascript - 使用 Java Script 和/或 jquery 更新图像