Qt5開(kāi)發(fā)中踩坑記錄

一、m 系列芯片 MacBook 使用 Qt5
使用官方下載的 MaintenanceTool 是沒(méi)辦法直接下載 arm 架構(gòu)的 Qt5 庫(kù)的。在 QtCreator 上面運(yùn)行的 Qt5 其實(shí)是 x86 架構(gòu)的 Qt 庫(kù),然后使用 Rosetta2 轉(zhuǎn)譯的,相比原生 arm 架構(gòu)的庫(kù),性能也會(huì)差點(diǎn)。
安裝 arm 架構(gòu)的 Qt5 庫(kù),目前有兩種方法:
1、編譯源碼安裝
2、通過(guò) brew 安裝

brew search qt@5

然后在 CMake 中設(shè)置:
-DCMAKE_PREFIX_PATH=/opt/homebrew/Cellar/qt@5/5.15.5_1/lib/cmake/Qt5

二、在 Qt 上同時(shí)使用 WebEngine 和 OpenGL
Qt 對(duì)這兩個(gè)功能都進(jìn)行了封裝,通過(guò) CMake 或者 QMake 都可以快速引入。
如果只引入 OpenGL,可以隨意設(shè)置 OpenGL 的版本環(huán)境,跟正常使用一樣。
如果同時(shí)引入了 WebEngine,由于 WebEngine 使用了 Chromium,OpenGL 的版本環(huán)境會(huì)被強(qiáng)行設(shè)置為4.1。> 所以如果同時(shí)引入OpenGL和WebEngine,則會(huì)導(dǎo)致版本gl版本不兼容問(wèn)題,(例如,如果之前是按照2.1的規(guī)范寫的 OpenGL,則無(wú)法在項(xiàng)目中使用)。

三、Qt 圖片相關(guān)
Qt5 在圖片方面有兩個(gè)相關(guān)的類:QPixMap 和 QImage。
QPixMap 偏向于顯示圖片,底層可能會(huì)直接用到硬件加速。
QImage 則更偏向于像素級(jí)的圖像處理,與硬件和平臺(tái)無(wú)關(guān)。
此外,Qt 還封裝了 QImageReader 用于讀取圖片的信息,如長(zhǎng)寬等。也可以用以下代碼查看 Qt 在當(dāng)前系統(tǒng)下支持的圖片格式:
QList<QByteArray> formats = QImageReader::supportedImageFormats();
for (const QByteArray &format : formats) {
qDebug() << format;
}
基本上,常見(jiàn)的圖片格式都可以直接用 Qt 自帶的類進(jìn)行加載。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容