Qt for MCUs新版:解决嵌入式系统通常考虑的主要问题

Qt是一个跨平台框架,通常用作图形工具包,它不仅创建CLI应用程序中非常有用。而且它也可以在三种主要的台式机操作系统以及移动操作系统(如Symbian,Nokia Belle,Meego Harmattan,MeeGo或BB10)以及嵌入式设备,Android(Necessitas)和iOS的端口上运行。现在我们为你提供了免费的试用版,点击文末“了解更多”。

从今天开始,新的适用于MCU的Qt将在Qt安装程序中提供。如果您不熟悉Qt,可以在此处尝试。1.4版引入了一个新的字体引擎,该引擎可以显示更多文本,而不会占用大量内存。该版本还包括API改进和错误修复,从而增强了可用性和稳定性。

您可以在更改日志中找到更改的完整列表,该列表可在联机文档中找到。继续阅读以获取有关主要新功能的更多信息。

新特点

借助用于MCU 1.4的Qt,解决了设计在微控制器上运行的嵌入式系统时通常要考虑的主要问题:内存占用量。这些系统中通常可用的有限数量的RAM通常会对在GUI端可以完成或不能完成的事情施加强大的限制。对于文本渲染尤其如此。使用MCU上的传统文本呈现方法来显示具有多种字体,不同大小和/或多种语言的高质量文本可能是一个真正的挑战,甚至在某些情况下甚至是不可能的。Qt Quick的全部目的在于使您能够创建具有吸引力的UI,而文本在这方面起着关键作用,这就是为什么我们将Qt for MCU集成了专门为资源受限的环境而设计的最佳字体引擎。

Monotype Spark™字体引擎

除了提供世界上最大的字体库外,Monotype还为嵌入式设备Monotype Spark提供了高效,高质量的字体渲染引擎。它已集成到Qt Quick Ultralite中,作为QML Text API的后端,并且是我们预先存在的所谓“静态”字体引擎的附加选项。如果您已经具有适用于MCU的Qt应用程序,则无需额外的代码即可切换到新引擎。您只需将项目配置为使用Spark,并且如果使用多种字体,请将它们捆绑到单个fontmap文件中。

那么,静态字体引擎和Spark字体引擎之间有什么区别,您应该如何选择一个?简单来说,从功能上来说,它们都提供了相似的功能。但是,虽然静态字体引擎针对速度进行了优化,但Spark字体引擎针对大小进行了优化。还值得注意的是,在许多情况下,Spark的大小增加远大于Static字体引擎的速度增加。

为了说明这一点,让我们看一些基准,比较具有不同字体配置的应用程序。

二进制大小数字结合了RAM和闪存的使用情况。CJK指的是中文,日文和韩文。

显然,当需要显示几种字体配置和/或许多字符时,使用Spark可以减少占地面积。当文本使用受到限制或RAM可用性不成问题时,静态字体引擎是一个很好的解决方案,而在所有其他情况下,Spark是一个更好的解决方案。

本页文档中提供了这两种引擎的更详细比较。

Spark引擎附带一个Monotype字体库,该库针对嵌入式设备进行了优化,该设备涵盖了所有使用最广泛的语言,但它也可以加载任何TrueType字体。要安装并开始使用它,您需要在Qt Installer中选择的平台下选择“ Monotype Spark Support”组件。

Qtitan组件集

  • QtitanRibbon: 遵循Microsoft Ribbon UI Paradigm for Qt技术的Ribbon UI组件,致力于为Windows、Linux和Mac OS X提供功能完整的Ribbon组件。
  • QtitanChart : 是一个C ++库,代表一组控件,这些控件使您可以快速地为应用程序提供漂亮而丰富的图表。并且支持所有主要的桌面操作系统。
  • QtitanDataGrid : 适用于Qt的商业化DataGrid 组件,使得表格数据可以直接面向终端用户完全集成了QtDesigner,极易适应其他相似开发环境,保证100%兼容Qt GUI。

如果这篇文章没能满足你的需求、点击了解更多!你能收获更多文章资讯&免费使用下载。

了解更多
举报
评论 0