小编Jes*_*ver的帖子

PHP - “FPDF 错误:不是 PNG 文件”,但图像是

我目前遇到了 fpdf 的一个非常奇怪的问题。我发现了一个没有答案的类似问题:not a PNG file in FPDF。我通过浏览器将图像上传到我的文件服务器,然后提取到 fpdf 报告中。当此图像是 png 时,我收到错误:“FPDF 错误:不是 PNG 文件”。当上传的图像是 jpg 时,我没有收到任何错误。这个问题似乎是几周前一夜之间出现的。

更奇怪的是,只有上传新的 png 时才会发生这种情况。报告中有一个 png 生成得很好。当我从系统下载该png并重新上传时,错误再次出现。

以下是我在尝试解决该问题时采取的一些步骤:

  1. 我已经确保该图像实际上是 png (通过其属性)。
  2. 我保存图像的方式没有任何改变,但代码如下:

    $original = $time."_".$name."_o.".$extension;
    $thumbnail = $time."_".$name."_t.".$extension;  
    include('SimpleImage.php');
    $image = new SimpleImage();
    $image->load($_FILES['file']['tmp_name']);
    $image->save($A_path."images/".$original);
    $image->resizeToHeight(200);
    $image->save($A_path."images/thumbs/".$thumbnail);
    $photo = "images/".$original;
    $thumb = "images/thumbs/".$thumbnail;
    
    Run Code Online (Sandbox Code Playgroud)
  3. 我检查了 PNG 格式或 FPDF 更新是否有任何更改,但没有成功。
  4. 我已经通过 gimp 将 jpg 转换为 png。
  5. 通过gimp将png转换为jpg,然后将jpg上传到系统不会产生任何错误。

解决方法-我已经在保存时将 png 转换为 jpg,而不是重新编码图像。谢谢您的帮助。

php png fpdf

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

fpdf ×1

php ×1

png ×1