gpt4 book ai didi

javascript - PHP在上传之前调整图像大小

转载 作者:行者123 更新时间:2023-11-27 23:53:31 24 4
gpt4 key购买 nike

我正在建立一个网站,管理员应该能够上传图像。如果图像大于 2MB,则会因限制而失败。但即使没有限制,由于访问者的加载时间,调整图像大小仍然会更好。

图像的宽度不应超过 800 像素,高度并不重要,因为它永远不会很大。我现在想要做的是调整图像大小,使宽度为 800px 或更低,并按相同比例调整高度大小。

我现在拥有的是:

if (!empty($_FILES)) 
{
$upload_dir = 'photos';
$tempFile = $_FILES['file']['tmp_name'];

$targetPath = dirname( __FILE__ ) . DIRECTORY_SEPARATOR . $upload_dir . DIRECTORY_SEPARATOR;
$mainFile = $targetPath . time() . '-' . $_FILES['file']['name'];

list($w, $h) = getimagesize($tempFile);
if ($w > 800)
{
$ratio = 800 / $w;
$newHeight = $ratio * $h;

$tempFile = imagescale($tempFile, 800);
}

move_uploaded_file($tempFile, $mainFile);
}

但这没有任何作用。

我使用 dropzone 和此脚本作为图像输入的目标。

有人能指出我正确的方向吗?或者 PHP 是否已经尝试在 $_FILES 中上传图像?如果是这样的话,我不知道如何解决。然后应该在 dropzone 调用此脚本之前调整它的大小。

最佳答案

一旦你有了$_FILES,你的图像就已经在服务器上了。您可以在 HTML5 中使用 canvas 元素在客户端调整其大小。

尝试阅读以下内容:

https://hacks.mozilla.org/2011/01/how-to-develop-a-html5-image-uploader/

关于javascript - PHP在上传之前调整图像大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32481010/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com