Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 调整用户上传图像大小的最佳实践_Php_Image_Imagemagick_Resize_Uploading - Fatal编程技术网

Php 调整用户上传图像大小的最佳实践

Php 调整用户上传图像大小的最佳实践,php,image,imagemagick,resize,uploading,Php,Image,Imagemagick,Resize,Uploading,我在一个网站工作,有很多用户上传的图片 让我们假设设计师做得很好,在整个网站上使用了4:3。现在,我们有两种尺寸,即400x300和200x150 您认为哪种调整策略最适合这种情况?如果用户上载800x200的图像,应如何调整其大小?它应该变成400x100,还是应该变成1200x300,然后裁剪到中心,变成400x300 另外,对于较小的图像,您认为应该发生什么情况。例如,如果用户试图上传200x150开始。是否应该扩大规模?对它有什么影响?我不认为应该拒绝所有较小的图像,尽管如果它们太小,用

我在一个网站工作,有很多用户上传的图片

让我们假设设计师做得很好,在整个网站上使用了4:3。现在,我们有两种尺寸,即400x300和200x150

您认为哪种调整策略最适合这种情况?如果用户上载800x200的图像,应如何调整其大小?它应该变成400x100,还是应该变成1200x300,然后裁剪到中心,变成400x300

另外,对于较小的图像,您认为应该发生什么情况。例如,如果用户试图上传200x150开始。是否应该扩大规模?对它有什么影响?我不认为应该拒绝所有较小的图像,尽管如果它们太小,用户可能会收到错误消息


顺便说一句,我说的是用PHP(Imagemagick)上传和处理。一般来说,缩小图像时应该使用双三次过滤,放大图像时应该使用双线性过滤。双三次滤波器有助于图像的清晰度,而双线性平滑图像

但是,无论是裁剪还是调整大小,还是将两者混合,这完全取决于用户上传的图像类型以及它们在网站上的显示方式

例如,如果您有照片的缩略图,您可能希望尽量避免裁剪它们


但是,如果你想要一种“艺术”的感觉,可以从一个角落裁剪图像,而不需要实际调整图像的大小。

最佳做法是按照客户/设计师的要求以及更适合特定站点的方式进行操作。你列出的所有场景对我来说都很好。在我们的应用程序中,我们总是将图像调整为正方形,但保持原始图像的纵横比,即如果原始图像与当前图像的比例不是1:1,我们只需将其填充即可。我们不以裁剪图像为中心,因为我发现现在至少有很多人在摄影中遵循三分之一法则,而且图像的感兴趣区域通常偏离中心:)。所以,您以不同的比例存储图像?非常感谢您的回答。。让图像以不同于您正在使用的图像的比例存储怎么样。如果在网站上,大小是400x300,用户上传了600x200,你认为最好的是什么。缩小1.5倍以达到400宽,或者放大1.5倍以达到300高,然后裁剪多余的宽度?@NikosZinas我会选择缩小,因为它比放大更能保持图像质量。