簡體   English   中英

PHP GD Lib-MIME類型為image / png的jpg圖像上的imagecreatefromjpeg失敗

[英]PHP GD Lib - imagecreatefromjpeg fails on jpg image with mime type image/png

當圖像上傳到我的網站時,我使用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()調整其大小以進行裁切imagecreatefromjpeg()如何阻止它失敗?

您只能在jpg圖片上使用imagecreatefromjpeg()
在上面的示例中,要檢查創建的輸出文件,您必須將代碼更改為

   <?php... getimagesize($outputFile); .... ?>


$ img包含您的源文件路徑...。 如果要從png圖像制作jpeg副本,可以使用imagecreatefrompng(...)然后使用imgejpeg(...)將其輸出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM