【问题标题】:PHP image resizing unknow source size, known output sizePHP图像调整未知源大小,已知输出大小
【发布时间】:2011-12-06 23:40:26
【问题描述】:

我目前正在一个网站上工作,这需要网站管理员能够上传几乎任何大小的图像,然后我需要找到一种方法将图像缩小到所需的大小网站的前端,所有这些都需要在不知道用户上传的图片大小的情况下完成,但图片总是需要缩放到 209x293 而不看起来很糟糕。

这可能吗?

【问题讨论】:

  • 不可能将任何图像缩放到精确的高度和宽度,并期望它看起来不会很糟糕。考虑一个 10x10000 的图像,您尝试将其调整为 203x293。
  • 如果你真的想要那个特定的精确尺寸并且你不需要相同的比例,那么你想要 CROP 而不是 SCALE!

标签: php codeigniter image-manipulation gd image-scaling


【解决方案1】:

您应该与您的客户争论,忘记该规则(接受任何图像),而只接受该比例的图像,或更好,您可以使用工具来裁剪图像,强制用户以您需要的分辨率裁剪图像。

Jcrop 是 Jquery 中的一个库,如果您想创建该裁剪功能,它可以为您提供很多帮助。

【讨论】:

    【解决方案2】:

    不知道您的确切要求,但由于您使用 CodeIgniter 对其进行了标记,因此您可以查看 Image Manipulation Class,其中包含完成工作所需的一切。

    在上传之前不知道图片的大小是一个很常见的问题...请注意在 php.ini 中设置的 MAX SIZE。

    您可能会发现 php 手册中的 file uploading 页面也很有用。

    【讨论】:

    • 基本上可以直接从数码相机上传图片,但在网站前端可以显示的最大尺寸为209x293,理想情况下,图片永远不会在网站上显示更小或比这更大。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-19
    • 1970-01-01
    • 2011-11-25
    • 2012-01-09
    相关资源
    最近更新 更多