博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【Qt】QPixmap加载图片报错:Corrupt JPEG data: premature end of data segment Didn't expect more than one scan
阅读量:4262 次
发布时间:2019-05-26

本文共 481 字,大约阅读时间需要 1 分钟。

1、问题描述

在使用QPixmap加载图片时失败,错误信息如下

Corrupt JPEG data: premature end of data segmentDidn't expect more than one scan

使用QPicture加载时错误信息如下:

QPicturePaintEngine::checkFormat: Incorrect header
QPicturePaintEngine::checkFormat: Incorrect header
QPicturePaintEngine::checkFormat: Incorrect header

2、原因分析

错误信息直译是:数据段过早结束,没想到会有不止一次的扫描!

大部分的原因是图片文件不完整或者图片在传输、复制等操作时数据意外更改。
如下图:原图经过网络传输时,发生错误,导致加载失败。
在这里插入图片描述
注意: 大部分预览图片的软件,都错误有冗余,可以打开图片,有的不行(比如,极速看图)

3、解决方法

绝大部分是因为图片文件损害;

如果想有一定的冗余,可以继续打开,显示正常的部分,可以参见

转载地址:http://cbmei.baihongyu.com/

你可能感兴趣的文章
Java基础--定时任务Timer
查看>>
GreenDao 3.2.2 使用总结
查看>>
Android打包 android.support.v4.content.FileProvider冲突
查看>>
Mina框架在项目中的使用(一)
查看>>
MINA2.0 原理
查看>>
mina Connection reset by peer异常
查看>>
Apache Mina Server 2.0 中文参考手册
查看>>
java.lang.RuntimeException: Manifest merger failed with multiple errors, see logs
查看>>
基础 HTML之目录问题(相对路径和绝对路径区别)
查看>>
ubuntu gem安装pg错误
查看>>
Android 判断用户2G/3G/4G移动数据网络
查看>>
Java线程--在主线程和子线程中处理类变量
查看>>
深入理解Java:SimpleDateFormat安全的时间格式化
查看>>
Android学习--SwipeRefreshLayout
查看>>
设计模式学习(Java)——单例模式
查看>>
Android Sqlite Failed to open database(无法打开数据库文件)
查看>>
Android实现屏幕旋转
查看>>
Android学习之路
查看>>
Aspectj简单使用(一)
查看>>
视频 api 收集
查看>>