将转换后的imagejpeg上传到服务器

时间:2015-01-14 15:34:55

标签: php

这是一个从上传的.jpg文件创建.png文件的功能。

$input_file = 'img/uploaded/'.$_SESSION['userid'].'-'.$_SESSION['username'].'.png';
$output_file = 'img/uploaded/'.$_SESSION['userid'].'-'.$_SESSION['username'].'.jpg';

$input = imagecreatefrompng($input_file);
list($width, $height) = getimagesize($input_file);
$output = imagecreatetruecolor($width, $height);
$white = imagecolorallocate($output,  255, 255, 255);
imagefilledrectangle($output, 0, 0, $width, $height, $white);
imagecopy($output, $input, 0, 0, 0, 0, $width, $height);
imagejpeg($output, $output_file);

我想知道的是如何为新JPEG图像定义自定义“质量”或压缩率。在某些其他转化函数中,有可能在0(最大压缩)和100(最高质量)之间进行选择。在我的情况下有人知道怎么做吗?

1 个答案:

答案 0 :(得分:2)

imagejpeg()的最后一个参数是"质量": 这应该将其设置为最高质量:

imagejpeg($output, $output_file, 100);

了解更多信息。看看这个:

http://php.net/manual/en/function.imagejpeg.php