使用BulletProof上传类时在上传之前调整图片大小

13

我找到了一个很好且快速实现的东西。它工作得很好,但在上传图像之前,我想将它们调整为最大宽度,同时保持比例。

假设我正在上传宽度为5000px的图像,我希望将其调整为1000px宽度,但保持高度比例,然后保存最终图像。

示例用法:

/* shrink() - will shrink/resize the image according to the given dimensions (in pixels) 
 * NOTE, a folder called 'shrinked_images' will be created first to store the uploaded image
 */ 
$bulletProof
->fileTypes(array("jpg", "gif", "png", "jpeg"))
->uploadDir("shrinked_images")
->shrink(array("height"=>100, "width"=>200))
->upload($_FILES["pictures"]);

GitHub:

https://github.com/samayo/bulletproof

我已阅读文档,但找不到有关调整大小的内容。在代码中能找到的只有缩小函数,但无法看到如何添加保持比例选项?

谢谢。Craig。


我用C#解决了问题,你想要吗?这样你就可以翻译它了。应该不会太难。 - Magic-Mouse
1个回答

2

shrink的第二个参数是$ratio,它允许保留宽高比。

试试:

->shrink(array("height"=>100, "width"=>200), true)

如果您希望使用宽度自适应方式调整图片大小,请将高度设置为PHP_INT_MAX,因为这两个参数都是必需的。
->shrink(array("height"=> PHP_INT_MAX, "width"=>200), true)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接