php - 创建图片库

标签 php javascript web-applications web

我想为我的网站创建一个图片库,并从网站的管理面板上传这些图片。我将在一个非常小的页面中显示所有图片,并且我将为每张图片分隔一个位置以显示所选图片(来自小图片)的大尺寸。

我知道有两种方法:

  1. 我创建了 2 张图片用于从管理面板上传,一大一小,大小固定。所以大的我会装在单独的大空间里。小的地方会显小。所以网站管理员应该创建 2 张图片。

  2. 我知道的第二种方法是使用 PHP 的 GD 库来只上传大图,并且在每个地方一个 PHP 函数将调整大图的大小并获得我需要的 2 个尺寸画廊。

第一种方法的缺点是,网站用户在上传前应使用 Photoshop 或其他工具。让我们同意,这对网站用户来说不是一件令人愉快的事情。

第二种方法也不好,因为 GD 通过降低质量来调整图片大小。这种损失是 Not Acceptable ,因为它太多了。

有什么方法可以在保持接近原始图片质量的同时执行调整大小操作?

或者比这两种方法更好的另一种方法是什么?

最佳答案

与 Photoshop 相比,GD 不会降低质量。只需确保您使用的是 imagecopyresampled() 而不是 imagecopyresized(),因为它不会进行任何类型的重采样。然后以足够高的质量保存生成的图像;对于 JPEG,大约是 80。

然后在 Photoshop 中进行类似的调整大小,您会发现差别不大。您还可以使用 GD 来锐化缩略图,这会让它们更加清晰。

编辑

我制作了一个工具来比较不同的调整大小方法,自己试试看什么是最好的方法:http://www.ulmanen.fi/stuff/downsample/

关于php - 创建图片库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1845913/

相关文章:

javascript - WebApp 基本问题

json - 如何从既没有 CORS 也没有 JSONP 的源在网页上使用 JSON?

php - MySQL Select...Where 子句返回语法错误

php - 当我打开编辑页面时,使所选数据默认在列表中选择

php - 获取字符串格式的 curl 响应

javascript - 如何在 Gutenberg 中使用序列化数据?

php - 我将如何扫描目录以使用 php 链接到 pdf?

javascript - 如何获取/更改 HTML5 进度条的值?

javascript - 如何从 Twitter 小部件中获取 Logo

java - Myntra 和 Jabong 等搜索结果是如何开发的?