当图片上传到我的网站时,我使用gd lib:
将它们全部转换为jpg格式。$image = imagecreatefrompng($img);
$outputFile = str_replace('png', 'jpg', $img);
unlink($img);
imagejpeg($image, $outputFile, $quality);
imagedestroy($image);
这个工作非常好,直到我需要复制一个图像进行裁剪。在imagecreatefromjpeg()
查看getimagesize($outputFile)
的图像细节,我可以看到,即使我已经成功地将png或gif转换为jpg,并且它具有jpg文件扩展名,mime类型仍然是image/png或image/gif。
Array
(
[0] => 250
[1] => 188
[2] => 3
[3] => width="250" height="188"
[bits] => 8
[mime] => image/png
)
当我转换为jpg时,我如何更改mime类型?或者当我需要对图像做一些事情时,我能做些什么来阻止它失败,比如复制它或使用imagecreatefromjpeg()
调整它的大小来裁剪它?
只能在jpg图片上使用imagecreatefromjpeg()
在上面的示例中,要检查创建的输出文件,必须将代码更改为
<?php... getimagesize($outputFile); .... ?>
$img包含源文件路径... .如果你想从png图像中复制一个jpeg格式,imagecreatefromting(…),然后用imgejpeg(…)输出它将是一种方法…