Qt 6.4 llega con nuevas funciones, mejoras internas y mas
The Qt Company dio a conocer el lanzamiento de la nueva versión de Qt 6.4, en el que el trabajo continúa para estabilizar y aumentar la funcionalidad de la rama Qt 6.
El equipo de Qt agregó más funciones a los tipos TableView y TreeView de Qt Quick, ademas de que presenta soporte para nuevas plataformas, trae muchas características nuevas, algunas como avances tecnológicos y muchas mejoras internas.
Principales novedades de Qt 6.4
En esta nueva versión se ha implementado el soporte completo para la plataforma WebAssembly, que permite crear aplicaciones Qt que se ejecutan en un navegador web y son portátiles entre diferentes plataformas de hardware. Las aplicaciones creadas para la plataforma WebAssembly, gracias a la copia JIT, se ejecutan con un rendimiento cercano al código nativo, pueden usar Qt Quick, Qt Quick 3D y las herramientas de visualización disponibles en Qt.
Otro de los cambios que se destaca es que se devolvió a la estructura principal el módulo Qt TextToSpeech, que se incluyó en Qt 5, pero no se incluyó en la rama Qt 6. El módulo proporciona herramientas de síntesis de voz, que se pueden utilizar para aumentar la accesibilidad de las aplicaciones para personas con discapacidad o para implementar nuevas herramientas de información de fondo para el usuario, por ejemplo, para mostrar notificaciones en aplicaciones de información y entretenimiento en el automóvil. En Linux, la conversión de texto a voz se realiza mediante la biblioteca Speech Dispatcher (libspeechd), y en otras plataformas a través de la API del sistema operativo estándar.
Ademas de ello, tambien se destaca que se agregó un módulo experimental con implementación de estilo de iOS para Qt Quick. Las aplicaciones basadas en Qt Quick Controls pueden usar automáticamente este módulo para crear máscaras nativas en la plataforma iOS, de forma similar a como se usan las máscaras nativas en Windows, macOS y Android.
Se agregó un módulo QtHttpServer experimental para integrar la funcionalidad del servidor HTTP en aplicaciones compatibles con HTTP/1.1, TLS/HTTPS, WebSockets, manejo de errores, enrutamiento de solicitudes basado en parámetros de URL (QHttpServerRouter) y REST API.
Se ha agregado un módulo experimental Qt Quick 3D Physics, que proporciona una API para simular procesos físicos que se pueden usar con Qt Quick 3D para interactuar y mover objetos de manera realista en escenas 3D. La implementación se basa en el motor PhysX.
Tambien se destaca que se agregó el soporte experimental para iluminación global al módulo Qt Quick 3D utilizando mapas de irradiación para simular de manera más realista la luz de diferentes fuentes en una escena 3D. Qt Quick 3D también es compatible con partículas lineales, materiales brillantes, ajustes de reflexión avanzados, skyboxes y materiales y texturas personalizados.
Los tipos TableView y TreeView proporcionados en Qt Quick se han ampliado para admitir la navegación con el teclado, la selección de filas y columnas, más control sobre la posición de las celdas, la animación y el colapso y expansión de las estructuras de árbol.
Qt Quick presenta un nuevo tipo FrameAnimation que permite que el código se ejecute en sincronización con los cuadros de animación. Para mejorar la suavidad de la animación, Qt Quick también proporciona un manejo automático de la sincronización incorrecta de vsync durante el renderizado de subprocesos múltiples.
El widget QQuickWidget, que permite crear interfaces que combinan elementos basados en Qt Quick y Qt Widget, tiene soporte completo para la capa RHI (Rendering Hardware Interface), lo que le permite trabajar no solo usando OpenGL, sino también sobre la API Vulkan, Metal y Direct 3D.
De los demás cambios que se destacan de esta nueva version:
- La clase QSslServer se ha agregado al módulo Qt Network , que le permite crear servidores de red eficientes que usan TLS para establecer un canal de comunicación seguro.
- Se ha agregado un backend experimental al módulo Qt Multimedia, que utiliza el paquete FFmpeg para el procesamiento de video y audio.
- Se agregó compatibilidad con el sonido espacial, que permite crear escenas con una distribución tridimensional del sonido y simular salas virtuales con características de reflexión del sonido según la ubicación del oyente, el tamaño de la sala y los materiales de las paredes y el piso.
- En el módulo Qt Widgets, la clase QFormLayout se amplía con funciones para crear interfaces para capturar la entrada estructurada del usuario.
- En la clase QWizard, diseñada para crear interfaces de varias etapas, se agregaron API para controlar la visibilidad de las líneas en los formularios y navegar a cualquier página del asistente.
- QML ha mejorado la compatibilidad con los tipos de valor para que sea más fácil pasar datos estructurados de C++ a QML.
- Se agregó compatibilidad con el marcado Markdown en la clase QTextDocuments.
Finalmente para quienes estén interesados en poder conocer más al respecto, deben saber que Qt 6.4 brinda soporte para Windows 10+, macOS 10.15+, Linux (Ubuntu 20.04, CentOS 8.2 , openSUSE 15.3, SUSE 15 SP2 ).
Puedes obtener más detalles en el siguiente enlace.