我在这里缺少什么吗?如果我改变imagejpeg($thumb, $newImage);
到imagejpeg($thumb);
它会回忆一大堆不可读的角色。拇指图像目录存在。
我的最终目标是以较低的质量复制图像。
$filename = $imageDirectory . '/1.jpg';
$percent = 0.5;
$newImage = $imageDirectory . '/thumbs/1.jpeg';
echo "image: <br>";
echo $filename;
list($width, $height) = getimagesize($filename);
$newwidth = $width * $percent;
$newheight = $height * $percent;
// Load
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($filename);
// Resize
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
// Output
imagejpeg($thumb, $newImage);
UPDATE:我现在意识到第二个参数必须是具有新名称的图像位置。所以......我重新定义了$ newImage。路径很好......如果我手动将名为1.jpg的图像上传到该位置,它就存在于该路径上。
答案 0 :(得分:-1)
如果要将图像输出到浏览器,您必须为响应添加正确的Content-Type
标题:
header('Content-Type: image/jpeg');
imagejpeg($yourimage);
请查看first example in the documentation以获取更多信息。如果您想在输出到浏览器之前降低质量,请查看第三个示例。