Qt 5.15 ramka versiyasi

Tanishtirdi platformalararo ramkani chiqarish Qt 5.15. Qt komponentlari uchun manba kodi LGPLv3 va GPLv2 litsenziyalari ostida taqdim etiladi. Qt 6 ning yangi filiali dekabr oyida nashr etiladi, unda kutilgan muhim me'moriy o'zgarishlar. Kelajakda Qt 6 filialiga o'tishni yumshatish uchun Qt 5.15 ba'zi yangi xususiyatlarni oldindan ko'rishni o'z ichiga oladi va 6-qtda olib tashlanishi rejalashtirilgan funksiyalarning yaqinda bekor qilinishi haqida qo'shimcha ogohlantirishlarni o'z ichiga oladi.

Qt 5.15 uzoq muddatli qo'llab-quvvatlash (LTS) versiyasi sifatida tasniflanadi. Shu bilan birga, hamjamiyat yangilanishlari uchun 5.15 nashr etiladi faqat keyingi muhim masala shakllanmaguncha, ya'ni. taxminan olti oy. Uch yil davomida yangilanishlarni ishlab chiqarishni o'z ichiga olgan kengaytirilgan LTS tsikli tijorat litsenziyasiga ega bo'lgan foydalanuvchilar uchun cheklangan bo'ladi (oddiy kompaniyalar uchun har bir dasturchi uchun yiliga 5508 dollar, startap va kichik biznes uchun yiliga 499 dollar). Qt kompaniyasi ham hisobga olinadi Qt tarqatish modeliga o'tish imkoniyati, unda birinchi 12 oy davomida barcha relizlar faqat tijorat litsenziyalari foydalanuvchilariga tarqatiladi. Ammo hozircha bu fikr muhokamadan nariga o'tmagan.

asosiy Qt 5.15 da innovatsiyalar:

  • Operatsion tizimning 3D API-ga bog'liq bo'lmagan mavhum grafik API yaratish bo'yicha ishlar davom ettirildi. Yangi Qt grafik stekining asosiy komponenti sahnani koβ€˜rsatish mexanizmi boβ€˜lib, u RHI (Rendering Hardware Interface) qatlamidan Qt Quick ilovalarini nafaqat OpenGL bilan, balki Vulkan, Metal va Direct 3D API-larining yuqori qismida quvvatlantirish uchun ishlatadi. 5.15 da yangi grafik stek "Texnologiyani ko'rib chiqish" maqomiga ega bo'lgan variant ko'rinishida taklif etiladi.
  • To'liq modul qo'llab-quvvatlanadi Qt Quick 3D, undan eksperimental rivojlanish belgisi olib tashlangan. Qt Quick 3D 2D va 3D grafik elementlarini birlashtirgan Qt Quick asosida foydalanuvchi interfeyslarini yaratish uchun yagona API taqdim etadi. Yangi API sizga UIP formatidan foydalanmasdan 3D interfeys elementlarini aniqlash uchun QML dan foydalanish imkonini beradi. Qt Quick 3D-da siz 2D va 3D uchun bitta ish vaqti (Qt Quick), bitta sahna tartibi va bitta animatsiya ramkasidan foydalanishingiz mumkin va vizual interfeysni ishlab chiqish uchun Qt Design Studio-dan foydalanishingiz mumkin. Modul Qt 3D yoki 3D Studio kontenti bilan QMLni integratsiyalashganda katta qoΚ»shimcha xarajatlar kabi muammolarni hal qiladi va animatsiya va transformatsiyalarni 2D va 3D oΚ»rtasida kadrlar darajasida sinxronlashtirish imkoniyatini beradi.

    Qt Quick 3D-ga qo'shilgan yangi xususiyatlar orasida qayta ishlashdan keyingi effektlarni qo'llab-quvvatlash, geometriyani manipulyatsiya qilish uchun C ++ API, QQuaternion sinfiga asoslangan aylanish API va nuqta chiroqlarini qo'llab-quvvatlash kiradi. Qt Quick 3D ning turli xususiyatlarini baholash uchun tayyorlangan yorug'lik turlari va manbalarini qanday o'zgartirishingiz, murakkab modellardan foydalanishingiz, teksturalar, materiallarni va anti-aliasingni qanday o'zgartirishingiz mumkinligini ko'rsatadigan maxsus demo ilovasi. Bir vaqtning o'zida taklif qildi chiqdi muhit Qt Quick 1.5D-ni to'liq qo'llab-quvvatlaydigan Qt Design Studio 3 foydalanuvchi interfeysini loyihalash.


  • Qt QMLda ish bo'ldi konsentrlangan Qt ga tayyorgarlik ko'rishda 6. O'rnatish majburiy bo'lgan komponentlarda "zarur" atributiga ega xususiyatlardan foydalanish imkoniyati amalga oshirildi. Qmllint yordam dasturi QML kodidagi mumkin bo'lgan muammolar haqida ogohlantirishlarni ishlab chiqarishni yaxshiladi. QML kodini kodlash uslubi ko'rsatmalariga muvofiq formatlashni osonlashtiradigan qmlformat yordam dasturi qo'shildi. QML ning Qt nashri bilan muvofiqligi ta'minlandi mikrokontrollerlar.
  • Qt Quick-da tasvir elementiga rangli bo'shliqlarni qo'llab-quvvatlash qo'shildi. Qt Quick Shapes-ga yangi PathText elementi qo'shildi.
    Ko'rsatkichni ishlov beruvchiga kursorShape xossasi qo'shildi, bu orqali ish stoli tizimlarida sichqoncha kursorining shaklini o'zgartirishingiz mumkin. TableView-ga asoslangan jadvallarga vertikal va gorizontal sarlavhalarni qo'shishni osonlashtirish uchun HeaderView elementi qo'shildi.

  • Mijoz tomonida oyna dekoratsiyasi (CSD) qo'llab-quvvatlashi sezilarli darajada yaxshilandi, bu dasturga o'zining oyna bezaklarini belgilash va oyna sarlavhasi satriga maxsus tarkibni joylashtirish imkonini beradi.
  • Modul barqarorlashdi Qt Lottie, bu Adobe After Effects uchun Bodymovin plaginidan foydalangan holda JSON formatida eksport qilingan grafik va animatsiyalarni ko'rsatish imkonini beruvchi ilg'or QML API taqdim etadi. QtLottie tufayli dizayner qulay dasturda animatsiya effektlarini tayyorlashi mumkin, ishlab chiquvchi esa eksport qilingan fayllarni QtQuick ilovasi interfeysiga bevosita ulashi mumkin. QtLottie animatsiya, kesish, qatlamlash va boshqa effektlarni bajarish uchun o'rnatilgan mikro dvigatelni o'z ichiga oladi. Dvigatelga LottieAnimation QML elementi orqali kirish mumkin, uni QML kodidan boshqa QtQuick elementi kabi boshqarish mumkin.
  • Qt WebEngine brauzer mexanizmi kod bazasiga yangilandi Chromium 80 (5.14 filialida Chromium 77 ishlatilgan, joriy versiya Chromium 83).
  • Qt 3D moduli yaxshilangan profillash va disk raskadrovka vositalariga ega.
  • Qt Multimedia ko'p sirtli renderlashni qo'llab-quvvatladi.
  • Qt GUI-da tasvirni masshtablash va o'zgartirish operatsiyalari endi ko'p hollarda ko'p tarmoqli.
  • Qt Network maxsus taymouts uchun qo'llab-quvvatlash qo'shildi va seans yorliqlari TLS 1.3 da (Session Ticket, server tomonidagi holatni saqlamasdan sessiyani davom ettirish imkonini beradi).
  • std :: funktsiyasi bilan ishlash uchun Qt Core, QRunnable va QThreadPool yoqilgan. Turli platformalarning o'ziga xos xususiyatlarini inobatga olgan holda, narsalarni axlatga ko'chirish uchun QFile::moveToTrash() yangi usuli qo'shildi.
  • Android uchun Qt ichida qo'shildi Fayllarni ochish va saqlash uchun mahalliy dialoglarni qo'llab-quvvatlash.

Manba: opennet.ru

a Izoh qo'shish