Qt 6.9 正式发布:Emoji 处理能力升级、性能优化
Qt 6.9现已全面推出,为应用开发者和设备制造商带来诸多新特性与改进!
作为亮点之一,升级至Qt 6.9可将现有应用的Emoji渲染提升至最新标准,支持Qt Quick 3D的无序透明渲染(Order Independent Transparency),大幅增强对现代OAuth2需求的适配能力,并在全平台设备上新增多项性能优化功能。
此外,新增的 API 和新功能也全面提高了开发灵活性和工作效率。
核心亮点速览:
1. Qt Graphs: 更强大的可视化效果
3D图表渲染能力显著增强,新增对Surface3D透明度的支持,引入QSpline3DSeries以渲染3D样条数据,并提供更多图表、坐标轴与标签的自定义选项。现在,将图表嵌入Qt Quick 3D的View3D中变得轻而易举,从而在3D场景中实现极具表现力的数据可视化。
2D图表的输入处理现已支持灵活自定义,QGraphsView可配置plotArea以精细控制图表渲染的矩形区域,细化图形渲染矩形的定位。
请阅读博客《Qt Graphs 6.9新功能详解》,深入了解Qt Graphs的改进。
2. Emoji处理能力升级
Emoji是全球最流行的书写系统之一,且其规范持续演进。自Qt 5.2添加彩色字体支持以来,Emoji领域已发生诸多变化,Qt 6.9正迎头赶上。
Qt现能自动检测文本中的Emoji序列,并根据Unicode规范按需选用正确的彩色字体。开发者可对此过程进行控制:禁用解析、在源码编译时完全排除Emoji分割器,或通过QFontDatabase的新API为Emoji指定特定的字体系列。目前Emoji支持的字体格式包括CBDT 和COLRv1,可实现跨平台高质量缩放渲染。
左:COLRv0,右:COLRv1
请阅读博客,纵览Emoji发展史及Qt 6.9的支持详情。
3. 扩展的客户端区域和安全区域
现代桌面和移动设备上应用设计的核心理念是内容至上——应用与系统UI元素以非侵入方式无缝融入内容。Qt 6.9通过Qt.ExpandedClientAreaHint窗口标志及Qt Quick的SafeArea附加属性引入新API,支持此类设计需求。结合使用这些API,应用内容可充满整个窗口或屏幕边缘,同时避开关键系统UI元素。
请阅读博客,获取此新功能的更多细节。
4. SVG CSS动画
Qt的SVG模块现已在SVG光栅化为像素图序列时,支持对颜色、填充、描边和形变的CSS动画的初步实现。同时,Qt 6.8中引入了VectorImage ,借助VectorImage,动画SVG现在可以直接渲染到Qt Quick场景图中。
由浏览器渲染
由 Qt 渲染
5. 性能优化特性
每个Qt版本均致力于简化跨平台设备的性能优化应用开发。除代码改进外,Qt 6.9新增对平台或图形子系统新特性的支持。
现代CPU架构普遍包含性能核与能效核,QThread现在可以设置执行任务时偏好的CPU核心类型。
在支持OpenGL平台上使用QQuickPaintedItem的用户可以再次使用FramebufferObject作为渲染模式,从而在硬件加速和命令式绘制阶段受益。
OpenGL ES RHI后端在可用时会利用多重采样渲染扩展,提升现代GPU架构上Qt Quick与Qt Quick 3D HMI的渲染性能。
在Windows平台上,Direct 3D RHI后端通过专用的垂直同步监视线程(vblank)驱动刷新,降低CPU负载与延迟。显著改善拖拽等UI交互操作的响应速度。
除OpenGL外,其他RHI后端现支持可变速率着色(Variable Rate Shading),为visionOS上的Qt Quick 3D XR提供动态注视点渲染支持。
Qt Quick新增的RectangularShadow元素以及Qt Quick 3D中阴影贴图边界控制的改进,使UI开发人员能够优化阴影和光晕效果的使用,避免高昂计算开销。
使用Qt项视图(Item Views)开发的Widget应用程序可以在处理数据频繁批量变更的模型时进行调优性能;而且只要禁用段的大小调整(resizeSection)和重新排序,QHeaderView的内存占用就会得到显著优化。
6. 无序透明渲染(Order Independent Transparency)
Qt Quick 3D现在支持 "无序透明渲染"(Order Independent Transparency),无需手动按深度排序透明物体即可渲染。虽然这需要一定的计算和内存成本,但可消除因排序不当(尤其是物体交叠时)而导致的视觉错误。我们已经在Qt Graphs中使用这种技术来渲染半透明表面图,但其同样适用于任何模型(包括实例化)。
Qt 6.9支持加权混合(Weighted Blended)技术,在成本、性能与精度间实现良好平衡。
7. 连接功能焕新
在Qt 6.8以及Qt 6.9中,Qt网络授权(Qt Network Authorization)模块显著增强以满足现代OAuth2需求。值得注意的是,它增加了对 "设备授权许可"(Device Authorization Grant)的支持,便于输入能力受限设备(如电视与IoT设备)的用户认证。引入OpenID Connect中获取ID令牌的基础功能,使应用能访问用户身份信息。现在,该模块允许使用其他浏览器用户代理(包括使用Qt WebEngine)进行身份验证,提供更高灵活性。为优化令牌管理,新增访问令牌临近过期的信号提醒,并支持自动刷新令牌。此外,该模块还能区分请求域和授权域,确保应用能基于用户授权权限精准调整行为。
请阅读博客, 了解Qt Network Authorization新功能的完整细节。
尽管Qt HTTP Server设计用于可信环境,我们仍额外强化其安全性。现在可以通过QHttpServerConfiguration类型配置传入请求的最大数量,从而防止DoS (Denial-of-Service) 攻击,暴力破解攻击或爬虫攻击。HTTP/2客户端可通过QHttp2Configuration控制并发流的最大数量。
8. Qt Quick开发者体验
Qt Quick开发者将受益于更佳工具支持与新功能。QML语言服务器现提供大纲视图,助力IDE与编辑器展示QML文档结构的层次化呈现(包括对象、属性与方法)。
新增ContextMenu组件,开发者可轻松地将上下文菜单附加到项目上(响应右键点击等平台特定事件)。此外,TextField与TextArea现提供默认上下文菜单(除非指定自定义菜单)。
最后,OpenXR新增了Metal后端支持,允许应用在 macOS上的Meta XR模拟器中运行。
9. 升级到Qt 6.9
Qt 6.9在现有Qt 6.8 LTS版本基础上新增诸多改进与特性,保持与所有Qt 6版本的二进制与源码兼容性。经过Beta包广泛测试与大量用户反馈,我们确信升级至Qt 6.9以利用这些改进将顺畅无阻。有关新的API的完整列表,请参阅我们的文档。衷心感谢所有贡献者!您可以在发布说明(https://code.qt.io/cgit/qt/qtreleasenotes.git/about/qt/6.9.0/release-note.md)的末尾查看为Qt源代码提供补丁的所有社区成员的完整名单。
10. 仍在使用Qt 5?
Qt 5.15的标准商业支持将于2025年5月26日结束。支持期结束后,该版本将进入EoS(支持终止)状态,仅通过Qt 5.15扩展安全维护(ESM)等附加服务提供支持。
了解有关Qt 5.15标准支持终止和ESM的更多信息。
11. 在线试用 Qt 6
现可通过浏览器直接体验Qt 6,无需安装。只需浏览try.qt.io即刻探索!
12. 针对Python的Qt 6.9
期待Qt for Python更新?Qt for Python 6.9也已发布!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
🔥 联动规则条件左侧支持变量:开源无代码 / 低代码平台 NocoBase
NocoBase 是一个极易扩展的开源无代码开发平台。完全掌控,无限扩展,助力你的开发团队快速响应变化,显著降低成本,不必投入几年时间和数百万资金研发,只需要花几分钟部署 NocoBase。 NocoBase 中文官网 官方文档 在线 Demo 汇总一周产品更新日志,最新发布可以前往我们的博客查看。 NocoBase 目前更新包括的版本更新包括三个分支:main ,next和 develop。 main :截止目前最稳定的版本,推荐安装此版本。 next:包含即将发布的新功能,经过初步测试的版本,可能存在部分已知或未知问题。主要面向测试用户,用于收集反馈和进一步优化功能。适合愿意提前体验新功能并提供反馈的测试用户。 develop:开发中的版本,包含最新的功能代码,可能尚未完成或存在较多不稳定因素,主要用于内部开发和快速迭代。适合对产品功能前沿发展感兴趣的技术用户,但可能存在较多问题或不完整功能,不建议在生产环境中使用。 main v1.6.21 发布时间:2025-04-17 🚀 优化 [client] 为弹窗组件增加 delay API (#6681) by @mytharche...
- 下一篇
ILSpy 9.1 发布,.NET 反编译工具
ILSpy 是一个开源的 .NET 反编译工具。ILSpy 9.1 现已发布,ILSpy 9.x 基于 .NET 8.0。除独立分发版之外的所有工件都依赖于框架构建,这意味着必须在启动 ILSpy 之前安装.NET 8.0.x 或更高版本。注意,ILSpy 9.1 也允许通过#3391运行更高版本的 ILSpy。 具体更新内容如下: New Language Features 将 pattern-detection更新至 Roslyn 4.13 Enhancements #1572:不要生成与 C# 关键字匹配的变量名。 #2716:添加允许对自定义属性进行排序的选项 #3377:如果在创建解决方案文件时选择了多个具有相同(短)名称的程序集,则扩展错误信息。 #3393:关闭平滑滚动的选项 #3399:将模块文件名添加为 AnalyzerEntityTreeNode 的工具提示 #3440:添加了对 evaluation-order-preserving的引用类型检查的支持 #3316:添加“variable scopes”以改进局部变量和匿名方法参数的命名 Contributions...
相关文章
文章评论
共有0条评论来说两句吧...