PHP 处理图片时报错:Warning: imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error

学习笔记 马富天 2017-08-08 15:37:51 1637 1

【摘要】今天使用 PHP 来打开图片的时候,出现了这么个报错:Warning: imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error,最后找到了原因并将其处理好了,本文做一下个人记录。

具体情况是这样的,我有一张图片名称为:1.jpg,我能够使用普通的图片查看工具查看该图片,然而,我想在上面添加水印文字的时候,报错了,说并不是 jpeg 类型的,具体报错内容如下:

请输入图片名称

代码是:

  1. $filename = '1.jpg';
  2. $text = 'www.mafutian.net';	//	添加的文字
  3. $font = 'consola.ttf';	//	字体
  4. $image_type = exif_imagetype($filename);
  5. $image = imagecreatefromjpeg($filename);	//	由文件或者 URL 创建一个新图像
  6. $imagecolor = imagecolorallocate($image, 255, 0, 0);
  7. imagefttext($image,13,0,10,20,$imagecolor,$font,$text);	//	使用 FreeType 2 字体将文本写入图像
  8. imagegif($image,$filename);	//	将图片输出到浏览器中

发现问题:原来我放在当前目录下的 1.jpg 文件真正的 mime 类型是 png 的类型(即有可能是我之前将它的格式强行改成了 jpg),所以只要把 imagecreatefromjpeg() 改成 imagecreatefrompng() 就可以了。当我修改之后,则得到图片结果:

请输入图片名称

版权归 马富天PHP博客 所有

本文标题:《PHP 处理图片时报错:Warning: imagecreatefromjpeg(): gd-jpeg: JPEG library reports unrecoverable error》

本文链接地址:http://www.mafutian.net/302.html

转载请务必注明出处,小生将不胜感激,谢谢! 喜欢本文或觉得本文对您有帮助,请分享给您的朋友 ^_^

1

0

上一篇《 PHP 如何批量添加图片水印 》 下一篇《 使用 jQuery 获取某一个子元素的个数 》

所有评论

  1. 首页
  2. 上一页
  3. 1
  4. 下一页
  5. 尾页
  6. 第1页
  7. 每页12条
  8. 共1页
  9. 共1条
评论审核未开启
表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情 表情
验证码

TOP10

  • 浏览最多
  • 评论最多