gpt4 book ai didi

php - 使用 imagejpeg 保存和提供图像文件

转载 作者:可可西里 更新时间:2023-11-01 00:11:21 26 4
gpt4 key购买 nike

我正在用 PHP + 图像处理做一些实验。我正在尝试将一些图像转换成黑白版本。我基本上已经弄明白了,但有一个小问题。

为了减少服务器的压力,我想保存黑白版本,只对以前没有通过脚本运行的图像运行图像过滤。所以,我有这样的东西:

<?php 
header("Content-type: image/jpeg");

$file = $_GET['img'];
$name = md5($file).".jpg";

if(file_exists("/path/to/file" . $name)) {

ob_clean();
flush();
readfile("path/to/file" . $name);
exit;

}
else {

$image = imagecreatefromjpeg($file);

imagefilter($image, IMG_FILTER_GRAYSCALE);
imagejpeg($image, "/path/to/file" . $name);

imagedestroy($image);
};

?>

这会创建文件的黑白版本并将它们保存到服务器。初始的“if”语句也有效 - 如果图像已经存在,它会正确地提供图像。

问题是对于运行的新图像,这会保存它们但不会将它们输出到浏览器。为此,我可以使用/更改什么?

此外,这是我第一次做这样的事情。如果您有关于执行上述操作的任何一般提示,我们将不胜感激。

最佳答案

上述函数的紧凑且正确的形式可以是:

<?php 
header("Content-type: image/jpeg");

$file = $_GET['img'];
$name = md5($file).".jpg";

if(!file_exists("/path/to/file" . $name)) {
imagefilter($image, IMG_FILTER_GRAYSCALE);
imagejpeg($image, "/path/to/file" . $name);
} else {
$image = imagecreatefromjpeg("/path/to/file" . $name);
}

imagejpeg($image);
imagedestroy($image);

?>

关于php - 使用 imagejpeg 保存和提供图像文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4375302/

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