1. 程式人生 > >qrc資源文件加載後,裸機環境下圖片不顯示

qrc資源文件加載後,裸機環境下圖片不顯示

apple eap mage 有關 cat image 取反 根據 format

問題描述:在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資源文件加載後,裸機環境下圖片不顯示