Desde Linux David Y. Naranjo  

Qt 6.12 LTS: Canvas Painter, StyleKit y compatibilidad con la CRA

QT 6.12

The Qt Company ha publicado la versión estable de Qt 6.12, designada oficialmente como una entrega de soporte a largo plazo (LTS). Para los clientes con licencias comerciales, esta versión garantiza una ventana de mantenimiento extendida de cinco años, mientras que los usuarios de la edición de código abierto dispondrán de soporte durante un período estándar de seis meses hasta la llegada del siguiente lanzamiento principal.

Esta nueva entrega sucede a Qt 6.8 (cuyo soporte se extenderá hasta octubre de 2029) y reemplaza formalmente a Qt 6.5, ciclo que concluyó su vigencia este mismo año.  Qt 6.12 ha sido adaptado para cumplir de manera estricta con las directivas de la Ley Europea de Ciberresiliencia (CRA). Para satisfacer estas exigencias antes de su entrada en vigor obligatoria en diciembre de 2027, el marco incluye su correspondiente Declaración de Conformidad, audita dependencias de terceros, identifica componentes críticos dentro del código fuente y entrega listas de materiales de software (SBOM) preparadas para entornos comerciales seguros.

Nuevo motor gráfico Canvas Painter y sistema de temas StyleKit

Qt 6.12 introduce avances en el módulo Qt Canvas Painter, el cual abandona la fase de vista previa para declararse listo para entornos de producción en C++ y QML. Este componente proporciona una API para renderizar contenido bidimensional con aceleración completa por hardware a través de la Interfaz de Hardware de Renderizado (RHI), aprovechando directamente APIs subyacentes como Vulkan, Metal, OpenGL y Direct3D.

Sobre esta arquitectura debuta el nuevo elemento experimental Canvas2D, un reemplazo del lienzo tradicional de Qt Quick que adopta la especificación HTML Canvas 2D Context, facilitando la programación de gráficos complejos mediante JavaScript acelerado en la GPU. Asimismo, el módulo Qt Graphs se expande con soporte para ejes logarítmicos, controles integrados de zoom y desplazamiento, y la opción de utilizar el motor Canvas Painter como backend de renderizado para gestionar grandes volúmenes de datos que cambian en tiempo real.

Para resolver la inconsistencia visual en aplicaciones híbridas, el entorno estrena el módulo experimental StyleKit dentro de Qt Labs. Esta solución separa formalmente la estructura funcional de los componentes de la interfaz respecto a sus propiedades estéticas, permitiendo definir desde una única fuente QML el diseño para controles tradicionales de Widgets y elementos de Qt Quick.

Mediante la propagación de propiedades y la integración natural con esquemas originados en herramientas de diseño como Figma, StyleKit simplifica drásticamente la implementación de temas claros, oscuros o de alto contraste sin duplicar código de renderizado.

Controles adaptativos y vectoriales

Qt Quick recibió mejoras de interfaz mediante la adición de tipos QML orientados a pantallas complejas, incorporando Safe Area (para evitar superposiciones con muescas o barras del sistema), Context Menu, formularios numéricos Double Spin Box y el campo interactivo Search Field.

Por otra parte, el tipo FlexboxLayout extiende sus opciones para aplicar principios de distribución CSS Flexbox en la alineación y empaquetado vertical de elementos. En paralelo, el módulo Vector Image añade soporte para nuevas propiedades y capacidades de animación avanzadas sobre archivos SVG y animaciones Lottie, garantizando escalabilidad geométrica sin pérdida de nitidez.

El flujo de trabajo durante el desarrollo de interfaces experimenta una aceleración fundamental gracias a la incorporación del mecanismo de recarga en caliente (Hot Reload) en el motor QML. Esta tecnología permite a los desarrolladores editar código de interfaz sobre la marcha en Qt Creator o mediante la herramienta de línea de comandos qmlpreview y visualizar de manera inmediata las modificaciones visuales sin necesidad de detener, recompilar o reiniciar el programa en ejecución.

Arquitectura de datos, redes y HarmonyOS

En la capa de lógica y abstracción de datos, la clase auxiliar QRangeModel evoluciona para transformar contenedores iterables estándar de C++ (como vectores, tuplas y arreglos) en estructuras visualizables por el marco de vistas y modelos de Qt.

La clase integra ahora capacidad nativa de ordenación directa sin requerir envolturas adicionales, optimizaciones de velocidad de búsqueda mediante el método match(), configuraciones avanzadas para cabeceras y propiedades para gestionar operaciones de arrastrar y soltar.

En la pila de red, el módulo gRPC incorpora compresión de mensajes en el lado del cliente para reducir el uso de ancho de banda y añade límites estrictos al tamaño de los mensajes entrantes para proteger a las aplicaciones de saturaciones por respuestas de servidor excesivamente pesadas.

Finalmente, Qt 6.12 incorpora el soporte a HarmonyOS como un entorno compatible con nivel LTS. Esta compatibilidad oficial permite extender aplicaciones Qt existentes hacia dispositivos de consumo, entornos automotrices, sistemas embebidos y ordenadores de Huawei sin necesidad de reescribir la base del código, abriendo un puente de distribución bidireccional entre el mercado global y el ecosistema tecnológico de Asia.

Finalmente si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.

Artículo original

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.