Php 使用防弹上载类时在上载前调整图像大小

Php 使用防弹上载类时在上载前调整图像大小,php,image,class,image-uploading,bulletproof,Php,Image,Class,Image Uploading,Bulletproof,发现这是很好的,很快实现。它的工作原理很好,但我想要的是在上传图像之前,它们被调整到最大宽度,但保持比例 假设我上传了一张5000px宽的图片,我想把它的大小调整到1000px宽,但保持高度比,然后保存最后的图片 用法示例: /* shrink() - will shrink/resize the image according to the given dimensions (in pixels) * NOTE, a folder called 'shrinked_images' will

发现这是很好的,很快实现。它的工作原理很好,但我想要的是在上传图像之前,它们被调整到最大宽度,但保持比例

假设我上传了一张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:

我已经阅读了文档,但找不到任何关于调整大小的内容。我在代码中只能找到收缩函数,但看不到如何添加keep ratio选项


谢谢。Craig.

收缩的第二个参数是
$ratio
,它允许保留纵横比

试一试

或者,如果您想使用仅宽度调整图像大小,请将高度设置为
PHP\u INT\u MAX
,因为这两个参数都是必需的

->shrink(array("height"=> PHP_INT_MAX, "width"=>200), true)
我用C#找到了解决方案,你想这样翻译吗?应该不会太难。
->shrink(array("height"=> PHP_INT_MAX, "width"=>200), true)