zurück zum Artikel

Embedded-Entwicklung: Qt for MCUs bringt eine schlanke Font-Rendering-Engine mit

Rainald Menge-Sonnentag
Embedded-Entwicklung: Qt for MCUs wechselt die Font Rendering Engine

Der Einsatz von Monotype Spark soll den Speicherbedarf von Mikrocontroller-Anwendungen deutlich reduzieren.

Die Qt Company hat Version 1.4 von Qt for MCUs veröffentlicht. Das aktuelle Release des auf die Embedded-Entwicklung ausgerichteten Grafikframeworks bringt Monotype Spark als Font-Engine mit, um den Speicherbedarf von Anwendungen mit Textausgabe in unterschiedlichen SchriftgrĂ¶ĂŸen zu reduzieren.

Auf der Hardwareseite bietet das Release eine Anbindung an den i.MX RT1170 [1], den NXP in KĂŒrze herausbringen will. Das zugehörige Evaluation Kit befindet sich derzeit noch in der technischen Preview-Phase.

Monotype Spark [2] ist eine Font-Rendering-Engine des Anbieters diverser Schriften Monotype, die speziell auf den Einsatz im Embedded-Bereich ausgelegt ist. Das von Qt for MCUs verwendete Framework Qt Quick Ultralite integriert als Backend fĂŒr die QML-Text-API neuerdings neben der statischen Font-Engine auch Monotype Spark.

Laut dem Beitrag auf dem Qt-Blog haben beide Engines dieselben Features, aber die statische Engine ist auf Performance und Monotype Spark auf geringen Speicherbedarf optimiert. Die Reduktion des Speicherbedarfs soll beim Einsatz von letzterer Font-Engine grĂ¶ĂŸer ausfallen als die Performanceeinbußen. Die Unterschiede werden wohl umso deutlicher, je mehr verschiedene SchriftgrĂ¶ĂŸen eine Anwendung verwendet.

Mit Qt for MCUs lassen sich Anwendungen erstellen, die direkt auf dem Mikrocontroller laufen. Das Framework setzt auf Qt Quick zum Erstellen von Nutzerschnittstellen mit QML (Qt Meta-object Language). Das Qt-Quick-Modul besitzt eine C++-API, um QML-Anwendungen mit C++-Code zu erweitern. Qt for MCUs enthÀlt eine Reihe von Qt Quick Controls, also vorgefertigte Steuerelemente, die das Erstellen von Nutzerschnittstellen vereinfachen sollen.

Qt

Qt for MCUs verbindet Qt Quick mit einer Laufzeitumgebung oder einer zusÀtzlichen RTOS-Schicht.

(Bild: Qt)

Qt for MCUs lĂ€sst sich wahlweise direkt auf dem Prozessor oder auf einem Echtzeitbetriebssystem (Real-time Operating System, RTOS) betreiben. FĂŒr den Bare-Metal-Betrieb bringt Qt for MCUs eine eigene Laufzeitumgebung fĂŒr Qt Quick mit, die sich in Kombination mit C++-Bibliotheken von Drittanbietern verwenden lĂ€sst.

Weitere Details lassen sich dem Qt-Blog entnehmen [3]. ErwÀhnenswert ist noch, dass das vor Kurzem erschienene Modellierungswerkzeug Qt Design Studio 1.6 [4] eine direkte Anbindung an Qt for MCUs bietet.

(rme [5])


URL dieses Artikels:
https://www.heise.de/-4893940

Links in diesem Artikel:
[1] https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/i-mx-rt-crossover-mcus/i-mx-rt1170-crossover-mcu-family-first-ghz-mcu-with-arm-cortex-m7-and-cortex-m4-cores:i.MX-RT1170
[2] https://www.monotype.com/products/embedded-solutions/spark
[3] https://www.qt.io/blog/qt-for-mcus-1.4-released
[4] https://www.heise.de/news/Qt-Design-Studio-1-6-erhaelt-eine-Anbindung-an-Matlab-Simulink-4891518.html
[5] mailto:rme@ix.de