QPixmap 在非QtCreator环境下无法显示jpg图片

这几天需要实现在Qt界面中显示jpg图片,于是直接将路径传给QPixmap对象,发现显示不出来。

然而在Qt SDK自带的Demo中却可以正确显示jpg图片,经搜索引擎查找发现,是自己的exe文件缺少需要依赖的jpeg.dll库,此库是一个插件形式的dll。

Qt对插件式dll的放置路径有着严格要求,必须按照其规定的格式存放,否则分分钟给你显示错误。。。

 

一、放置位置

对于jpeg.dll库而言,在Win平台上的放置位置必须是: exe文件所在的文件夹\imageformats\jpeg.dll。

一般而言,可能既需要debug版本的dll,也需要release版本的dll,最好将jpeg.dll 和 jpegd.dll同步拷贝过来。

也就是:

exe文件所在的文件夹\imageformats\jpeg.dll;

exe文件所在的文件夹\imageformats\jpegd.dll;

 

二、查找jpeg.dll

既然我们已经知道需要用到jped.dll,那么如何找到这个动态库呢?答案就在Qt SDK中。

给出我电脑上的路径:Qt5.4.1\5.4\msvc2013\plugins\imageformats\。

 

注意:需要将imageformats文件夹同步拷贝!!

 

对于Mac的配置,可参考https://doc.qt.io/qt-5/macos-deployment.html

 

posted @ 2019-04-11 17:12  bky2016  阅读(1402)  评论(0编辑  收藏  举报