栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在不使用第三方库的情况下在PHP中调整图像大小?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在不使用第三方库的情况下在PHP中调整图像大小?

最后,我发现了一种适合我需求的方法。以下代码段会将图像调整为指定的宽度,并自动计算高度以保持比例。

$image = $_FILES["image"]["tmp_name"];$resizedDestination = $uploadDirectory.md5($randomNumber.$filename)."_RESIZED.jpg";copy($_FILES, $resizedDestination);$imageSize = getImageSize($image);$imageWidth = $imageSize[0];$imageHeight = $imageSize[1];$DESIRED_WIDTH = 100;$proportionalHeight = round(($DESIRED_WIDTH * $imageHeight) / $imageWidth);$originalImage = imageCreateFromJPEG($image);$resizedImage = imageCreateTrueColor($DESIRED_WIDTH, $proportionalHeight);imageCopyResampled($images_fin, $originalImage, 0, 0, 0, 0, $DESIRED_WIDTH+1, $proportionalHeight+1, $imageWidth, $imageHeight);imageJPEG($resizedImage, $resizedDestination);imageDestroy($originalImage);imageDestroy($resizedImage);

对于寻求完整示例的其他任何人,请创建两个文件:

<!-- send.html --><html><head>    <title>Simple File Upload</title></head><body>    <center>        <div > Select an image. <br/> <br/> <form action="receive.php" enctype="multipart/form-data" method="post">     <input type="file" name="image" size="40">     <input type="submit" value="Send"> </form>        </div>    </center></body><?php// receive.php$randomNumber = rand(0, 99999);$uploadDirectory = "images/";$filename = basename($_FILES['file_contents']['name']);$destination = $uploadDirectory.md5($randomNumber.$filename).".jpg";echo "File path:".$filePath."<br/>";if (is_uploaded_file($_FILES["image"]["tmp_name"]) == true) {    echo "File successfully received through HTTP POST.<br/>";    // Validate the file size, accept files under 5 MB (~5e+6 bytes).    if ($_FILES['image']['size'] <= 5000000) {        echo "File size: ".$_FILES["image"]["size"]." bytes.<br/>";        // Resize and save the image.        $image = $_FILES["image"]["tmp_name"];        $resizedDestination = $uploadDirectory.md5($randomNumber.$filename)."_RESIZED.jpg";        copy($_FILES, $resizedDestination);        $imageSize = getImageSize($image);        $imageWidth = $imageSize[0];        $imageHeight = $imageSize[1];        $DESIRED_WIDTH = 100;        $proportionalHeight = round(($DESIRED_WIDTH * $imageHeight) / $imageWidth);        $originalImage = imageCreateFromJPEG($image);        $resizedImage = imageCreateTrueColor($DESIRED_WIDTH, $proportionalHeight);        imageCopyResampled($images_fin, $originalImage, 0, 0, 0, 0, $DESIRED_WIDTH+1, $proportionalHeight+1, $imageWidth, $imageHeight);        imageJPEG($resizedImage, $resizedDestination);        imageDestroy($originalImage);        imageDestroy($resizedImage);        // Save the original image.        if (move_uploaded_file($_FILES['image']['tmp_name'], $destination) == true) { echo "Copied the original file to the specified destination.<br/>";        }    }}?>


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/421721.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号