شرکت کیوت، چارچوب کیوت ۶.۲ را منتشر کرده است که همچنان به کار بر روی تثبیت و گسترش قابلیتهای شاخه کیوت ۶ ادامه میدهد. کیوت ۶.۲ از پلتفرمها پشتیبانی میکند. Windows 10+, macOS 10.15+ ، Linux (Ubuntu شماره ۱۰۲۹، CentOS ۸.۲، اوپنسوزه ۱۵.۳، سوزه ۱۵ سرویس پک ۲)، آیاواس ۱۴+ Android 6+ (API 23+)، webOS، WebAssembly، INTEGRITY و QNX. کد منبع اجزای Qt تحت مجوزهای LGPLv3 و GPLv2 منتشر شده است.
تغییرات عمده در Qt 6.4:
- پشتیبانی کامل از پلتفرم WebAssembly پیادهسازی شده است که امکان ایجاد برنامههای Qt را فراهم میکند که در یک مرورگر وب اجرا میشوند و در پلتفرمهای سختافزاری مختلف قابل حمل هستند. برنامههای ساخته شده برای پلتفرم WebAssembly به لطف کپی JIT با عملکردی نزدیک به کد بومی اجرا میشوند و میتوانند از Qt Quick، Qt Quick 3D و ابزارهای تجسم موجود در Qt استفاده کنند. از آنجایی که برنامههای مبتنی بر WebAssembly در یک محیط مرورگر ایزوله اجرا میشوند، دسترسی به برخی از APIها برای کار با منابع محلی و سرویسهای سیستم عامل محدود است، اما APIهای اضافی برای ادغام مرورگر ارائه شده است.
- ماژول Qt TextToSpeech که در Qt 5 وجود داشت اما در شاخه Qt 6 گنجانده نشده بود، به بسته اصلی بازگردانده شده است. این ماژول ابزارهایی برای سنتز گفتار ارائه میدهد که میتواند برای بهبود دسترسی به برنامهها برای افراد دارای معلولیت یا پیادهسازی روشهای جدید اطلاعات کاربر پسزمینه، به عنوان مثال، برای نمایش اعلانها در برنامههای سیستمهای سرگرمی خودرو، مورد استفاده قرار گیرد. Linux تبدیل متن به گفتار با استفاده از کتابخانه Speech Dispatcher (libspeechd) و در سایر پلتفرمها از طریق API استاندارد سیستم عامل انجام میشود.
- یک ماژول آزمایشی که استایلبندی iOS را برای Qt Quick پیادهسازی میکند، اضافه شده است. برنامههای مبتنی بر کنترلهای Qt Quick میتوانند بهطور خودکار از این ماژول برای ایجاد استایلبندی رابط کاربری بومی در پلتفرم iOS استفاده کنند، مشابه نحوه اعمال استایلبندی بومی در Windows, macOS и Android.


- یک ماژول آزمایشی QtHttpServer اضافه شده است که به شما امکان میدهد قابلیت سرور HTTP را در برنامههای خود ادغام کنید و از HTTP/1.1، TLS/HTTPS، WebSockets، مدیریت خطا، مسیریابی درخواست بر اساس پارامترهای URL (QHttpServerRouter) و REST API پشتیبانی میکند.
- ماژول آزمایشی فیزیک سهبعدی Qt Quick اضافه شده است. این ماژول یک API برای شبیهسازی فرآیندهای فیزیکی ارائه میدهد که میتواند با Qt Quick 3D برای تعامل واقعگرایانه و حرکت اشیاء در صحنههای سهبعدی مورد استفاده قرار گیرد. پیادهسازی آن بر اساس موتور PhysX است.
- ماژول Qt Quick 3D پشتیبانی آزمایشی برای نورپردازی سراسری با استفاده از نقشههای تابش اضافه کرده است که امکان شبیهسازی واقعگرایانهتر نور از منابع مختلف در یک صحنه سهبعدی را فراهم میکند. Qt Quick 3D همچنین از ذرات خطی، مواد براق، تنظیمات بازتاب پیشرفته، جعبههای آسمان و مواد و بافتهای سفارشی پشتیبانی میکند.

- قابلیتهای انواع TableView و TreeView ارائه شده توسط Qt Quick گسترش یافته است و پشتیبانی از پیمایش صفحهکلید، انتخاب سطر و ستون، کنترل کاملتر بر موقعیت سلول، انیمیشن و باز و بسته کردن ساختارهای درختی به آن اضافه شده است.
- کیوت کوئیک نوع جدیدی از FrameAnimation را معرفی میکند که به کد اجازه میدهد همزمان با فریمهای انیمیشن اجرا شود. برای بهبود روانی انیمیشن، کیوت کوئیک همچنین امکان مدیریت خودکار همگامسازی نادرست vsync را در طول رندر چند رشتهای فراهم میکند.

- ویجت QQuickWidget که به شما امکان میدهد رابطهایی ایجاد کنید که عناصر مبتنی بر Qt Quick و Qt Widget را با هم ترکیب میکنند، پشتیبانی کامل از لایه RHI (رابط سختافزاری رندرینگ) را پیادهسازی میکند که به شما امکان میدهد نه تنها با OpenGL، بلکه بر روی APIهای Vulkan، Metal و Direct 3D نیز کار کنید.
- کلاس QSslServer به ماژول Qt Network اضافه شده است و به شما امکان میدهد تا شبکههای کارآمدی ایجاد کنید. سرورهابا استفاده از TLS برای ایجاد یک کانال ارتباطی امن.
- یک بکاند آزمایشی به ماژول Qt Multimedia اضافه شده است که از بسته FFmpeg برای پردازش ویدیو و صدا استفاده میکند. پخش ویدیو اکنون فضاهای رنگی و HDR را بهتر مدیریت میکند و قابلیت درج زیرنویس از طریق QVideoFrames نیز اضافه شده است. پشتیبانی از صدای فضایی نیز اضافه شده است که امکان ایجاد صحنههایی با توزیع صدای سهبعدی و شبیهسازی اتاقهای مجازی با ویژگیهای انعکاس صدا بر اساس موقعیت شنونده، اندازه اتاق و جنس دیوار و کف را فراهم میکند.
- در ماژول Qt Widgets، کلاس QFormLayout با ابزارهایی برای ساخت رابطهای کاربری جهت دریافت ورودیهای ساختاریافتهی کاربر، توسعه داده شده است. کلاس QWizard که برای ایجاد رابطهای کاربری چند مرحلهای طراحی شده است، با APIهایی برای مدیریت نمایش سطرهای فرم و پیمایش به هر صفحهای در ویزارد، بهبود یافته است.
- QML پشتیبانی از انواع مقداری را بهبود بخشیده است و انتقال دادههای ساختاریافته از C++ به QML را سادهتر میکند. اکنون میتوان از چنین انواع و لیستهایی از این نوعها در ویژگیهای مبتنی بر QObject بدون اتصال استفاده کرد. سرور LSP گسترش یافته است تا پشتیبانی از زبان QML را در محیطهای توسعه یکپارچه ادغام کند. کامپایلر نوع QML اکنون به طور پیشفرض فعال است و به شما امکان میدهد نمایشهای QML را به کد C++ کامپایل کنید.
- قابلیتهای کار با حروف رشتهای در کد گسترش یافته است: پشتیبانی از تمام کدگذاریهای موجود در ICU (مؤلفههای بینالمللی برای یونیکد) به کلاسهای QStringEncoder و QStringDecoder اضافه شده است.
- کلاس QTextDocuments اکنون از نشانهگذاری Markdown پشتیبانی میکند.
منبع: opennet.ru




