qrc资源文件加载后,裸机环境下图片不显示
Posted 随性者也
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qrc资源文件加载后,裸机环境下图片不显示相关的知识,希望对你有一定的参考价值。
问题描述:在qt开发环境下,使用qss进行界面美化工作,里面包含许多图片资源。最后项目决定把这些图片资源和代码一起打包。然后就把图片资源和qss文件一起编入qrc文件中进行编译。在本机开发环境下是没有任何显示的问题的,但是在裸机环境下就出现了图片显示不正常,而色彩显示正常的问题。
问题分析:通过把图片资源嵌入到qrc文件中,Qt的rcc.exe会根据qrc文件生成moc文件。当程序运行中,这些图片就加载到内存中。需要使用这些图片资源时可以直接读取,而不需要通过IO方式去读取磁盘的资源,可以提高反应速度,是一个使用内存空间换取反应时间的方式。对于其中的图片资源,qt程序读取时需要一些与图片相关的动态库。这些动态库在qt的安装目录中就有,具体的位置在qt安装目录下的plugins文件中,里面有关图片的库和数据库的库等等。
解决办法:在程序的执行目录下添加qt相关的图片库。把plugins目录下的imageformats目录放入你的程序执行目录下即可。如果还解决不了问题,你可以指定库的目录。
具体的函数为 void QCoreApplication::addLibraryPath ( const QString & path ) [static]
以上是关于qrc资源文件加载后,裸机环境下图片不显示的主要内容,如果未能解决你的问题,请参考以下文章
PyQt5 图形处理 - Qt Designer创建qrc资源文件引用图片资源实例演示,QTextBrower组件引用图片资源方法展示