Qt 5.11包含一些新功能以及對現有功能的許多錯誤修復。
Qt Core上有很多小修改。例如說,一部分工具類增加了右值引用的重載版本,並且添加了一些的方法以獲得更好的STL兼容。
在Qt Network中,現在iOS支持ALPN和HTTP/2。
Qt Core中的一個重大更新是改進了Unicode支持。現在QChar,QString,QTextBoundaryFinder和雙向文本算法完美兼容Unicode 10。
Qt 5.11的一個重要的改進是關於Windows上的可訪問性支持。它得到了完全重寫,現在基於Microsoft UI Automation。
同時為了更好地支持高DPI顯示,也進一步修改了Windows上的部件樣式。Linux上的列印對話框也進行了重大改進,為CUPS的選項提供了更好的支持。
Qt Widgets包含了大量的錯誤修復,並支持在QLineEdit中通過滑鼠快速選擇文本。
總而言之,對桌面用戶來說,這個更新很棒。
QML引擎後端發生一些比較大的變化。我們完全重寫了編譯器管道,它負責解析和編譯QML。新的編譯器管道在性能和可維護性方面有著重大改進。
新的編譯器管道總是將QML編譯為與平臺無關的字節碼。引擎會將這個字節碼緩存在.qmlc文件中。您也可以使用qmlcompiler功能(現在也可在開源版本中使用)提前生成字節碼。
與舊版本相比,新的字節碼解釋器性能大大提高。在絕大多數測試用例中,它能達到Qt 5.10中80-90%的JIT性能。
Qt Quick和Qt Quick Controls在Qt Quick中,我們擴展了對在Image元素中加載壓縮紋理的支持,現在支持.ktx和.pkm容器文件格式。將圖像存儲為可以通過GPU直接處理的格式,會有助於減少應用程式啟動時間和內存消耗。
Qt Quick Controls 2包含了很多錯誤修復與新增了一些小功能。
Qt Location也是一個有很多改進的模塊。最重要的新功能可能是實現對逐嚮導航的支持。但除此之外,Qt Location現在有一個實驗性的API來創建不綁定到QQuickItems的地圖對象。而且MapPolyline對象的性能也有了很大的改進,並且現在圖層支持與Map組件結合使用。另外,我們製作了Routing and Places API,並增加了一個新的WayPoint元素。最後,MapBox 插件新增對地理編碼和地點的支持。
將Qt Webengine的Chromium版本更新為Chromium 65。此外,我們現在支持嵌入式DevTools,而無需使用單獨的瀏覽器,可安裝的Cookie過濾器和配額權限。
上面提到的所有新功能當然也可以用於Qt for Device Creation。而且我們還一直在努力改進一些嵌入式所特定功能。
有一項新功能是支持基於硬體的圖形層,目前可用作支持VSP2硬體合成平臺的技術預覽版。這可以用於諸如視頻底層之類的功能,並有助於提高性能並降低功耗。我們的目標是在未來的版本中擴展對更多平臺和硬體組合的支持。
Qt SerialBus改進了對CAN總線支持。KNX模塊也包含了一些更大的更新。另外,Qt 5.11將增加一個新的模塊,增加對OPC/UA的支持。該模塊將作為Qt 5.11中的技術預覽版模塊提供。
其他項目qdoc現在使用libclang來解析C ++,對現代C ++提供了更好的支持。Qt Serialbus和Bluetooth 改進了對CAN總線和BTLE的支持。
使用Qt 5.11,我們也取消了對一些較老的編譯器和平臺的支持。不再支持MSVC 2013,QNX 6.6和macOS 10.10。
Qt for Webassembly使用Qt for Webassembly,我們正在努力填補我們跨平臺故事的最後一個空白,允許我們的用戶將Web和瀏覽器作為Qt應用程式的平臺。第一個版本今天作為技術預覽版發布,請查看單獨的博客文章了解更多詳情。