การเปิดตัว Qt 5.13 framework

หลังจากหกเดือนของการพัฒนา เตรียมไว้ การเปิดตัวกรอบการทำงานข้ามแพลตฟอร์ม Qt 5.13. ซอร์สโค้ดสำหรับส่วนประกอบ Qt ได้รับอนุญาตภายใต้ LGPLv3 และ GPLv2 เครื่องมือสำหรับนักพัฒนา Qt เช่น Qt Creator และ qmake และบางโมดูลได้รับอนุญาตภายใต้ GPLv3

หลัก นวัตกรรม:

  • มีการสนับสนุนเต็มรูปแบบสำหรับโมดูล “Qt สำหรับ WebAssembly” (รุ่นทดลองก่อนหน้านี้) ซึ่งช่วยให้คุณสามารถรวบรวมแอปพลิเคชันกราฟิกที่ใช้ Qt ในรูปแบบของโมดูล WebAssembly ที่สามารถเรียกใช้ได้โดยตรงบนเว็บเบราว์เซอร์ Emscripten ใช้สำหรับการรวบรวม OpenGL แปลเป็น WebGL;
  • ความสามารถของโมดูล Qt GUI ได้รับการขยาย ซึ่งสรุปคลาสที่เกี่ยวข้องกับการบูรณาการกับระบบหน้าต่าง การประมวลผลเหตุการณ์ การบูรณาการกับ OpenGL และ OpenGL ES กราฟิก 2D การทำงานกับรูปภาพ แบบอักษร และข้อความ เวอร์ชันใหม่เพิ่ม API ใหม่
    QImage::convertTo สำหรับการแปลงรูปแบบภาพ มีการเพิ่มวิธีการใหม่ที่ชัดเจน สำรอง และความจุในคลาส QPainterPath

  • โมดูล Qt QML ซึ่งมีเครื่องมือสำหรับการพัฒนาอินเทอร์เฟซโดยใช้ภาษา QML ได้ปรับปรุงการรองรับประเภทที่ระบุในโค้ด C++ เพิ่มประสิทธิภาพการประมวลผลค่า "null" ในขั้นตอนการคอมไพล์ เพิ่มความสามารถในการสร้างตารางฟังก์ชันบนระบบ Windows 64 บิต ช่วยให้คุณสามารถคลายสแต็กสำหรับฟังก์ชันที่คอมไพล์ด้วย JIT
  • ใน Qt Quick วัตถุ TableView ได้เพิ่มความสามารถในการซ่อนคอลัมน์และแถวของตาราง
  • เพิ่มประเภทใน Qt Quick Controls 2 สปลิตวิว เพื่อวางองค์ประกอบในแนวนอนหรือแนวตั้ง โดยแสดงตัวคั่นแบบเคลื่อนย้ายได้ระหว่างแต่ละองค์ประกอบ เพิ่มคุณสมบัติสำหรับไอคอนที่ให้คุณควบคุมแคชได้
  • เว็บเอ็นจิ้น Qt WebEngine ได้รับการอัปเดตเป็น Chromium 73 และขยายด้วยการรองรับโปรแกรมดู PDF ในตัว ซึ่งออกแบบเป็นส่วนเสริมภายใน รุ่นใหม่ยังเพิ่มพื้นที่จัดเก็บใบรับรองไคลเอ็นต์ในเครื่องและการสนับสนุนใบรับรองจาก QML เพิ่ม API การแจ้งเตือนทางเว็บ มีการดำเนินการสนับสนุนการกำหนดตัวดักคำขอ URL
  • โมดูลเครือข่าย Qt สำหรับซ็อกเก็ต SSL ได้เพิ่มการรองรับช่องทางที่ปลอดภัยและความสามารถในการตรวจสอบสถานะของใบรับรองโดยใช้ OCSP (Online Certificate Status Protocol) เพื่อรองรับ SSL บน Linux และ Android จึงมีการใช้ไลบรารี OpenSSL 1.1 สาขาใหม่
  • ในโมดูล Qt Multimedia สำหรับ VideoOutput ประเภท QML มีการเพิ่มการรองรับการเล่นต่อเนื่อง (โดยไม่หยุดระหว่างเนื้อหาต่างๆ ควบคุมโดยคุณสมบัติ flushMode) สำหรับ Windows และ macOS ได้มีการเพิ่มความสามารถในการใช้เฟรมเวิร์ก GStreamer แล้ว เพิ่มการรองรับบทบาทด้านเสียงสำหรับ Android;
  • โมดูล Qt KNX ได้รับการอัปเดตโดยรองรับมาตรฐานชื่อเดียวกันสำหรับระบบควบคุมอัตโนมัติในบ้าน เพิ่ม API สำหรับสร้างการเชื่อมต่อไคลเอนต์ที่ปลอดภัยกับเซิร์ฟเวอร์ KNXnet ซึ่งสามารถใช้เพื่อส่งข้อความอย่างปลอดภัยไปยังบัส KNX และควบคุมอุปกรณ์ที่เปิดใช้งาน KNX
  • ธงการพัฒนาเชิงทดลองถูกลบออกจาก C++ API ของโมดูล Qt OPC UA ซึ่งให้การสนับสนุนมาตรฐานการสื่อสารอุตสาหกรรม OPC/UA เพิ่ม API ทดลองสำหรับ QML;
  • โมดูลทดลองใหม่ Qt CoAP Constrained Application Protocol ได้รับการเพิ่มพร้อมกับการใช้งานส่วนไคลเอนต์ของโปรโตคอล M2M ที่ใช้ในการสร้างเครือข่ายของอุปกรณ์ Internet of Things ดำเนินการสนับสนุน DTLS (Datagram TLS) ผ่าน UDP;
  • มีการแก้ไขและปรับปรุงชุดโมดูล "Qt for Python" สำหรับการสร้างแอปพลิเคชันกราฟิกใน Python โดยใช้ Qt5 (นักพัฒนา Python สามารถเข้าถึง Qt C++ API ส่วนใหญ่ได้) Qt สำหรับ Python ขึ้นอยู่กับโมดูล PySide2 และยังคงพัฒนาต่อไป (อันที่จริง PySide รุ่นแรกที่รองรับ Qt 5 นั้นนำเสนอภายใต้ชื่อใหม่)
  • เพิ่มโมดูลการทดลองใหม่ คิวท์ ลอตตี้ซึ่งมี QML API ขั้นสูงที่ช่วยให้คุณสามารถเรนเดอร์กราฟิกและภาพเคลื่อนไหวที่ส่งออกในรูปแบบ JSON โดยใช้ปลั๊กอิน Bodymovin สำหรับ Adobe After Effects ขอบคุณ QtLottie นักออกแบบสามารถเตรียมเอฟเฟกต์ภาพเคลื่อนไหวในแอปพลิเคชันที่สะดวกสบาย และนักพัฒนาสามารถเชื่อมต่อไฟล์ที่ส่งออกไปยังอินเทอร์เฟซแอปพลิเคชันบน QtQuick ได้โดยตรง QtLottie มีไมโครเอ็นจิ้นในตัวสำหรับการแสดงแอนิเมชั่น การครอบตัด การแบ่งเลเยอร์ และเอฟเฟกต์อื่น ๆ กลไกสามารถเข้าถึงได้ผ่านองค์ประกอบ LottieAnimation QML ซึ่งสามารถควบคุมได้จากโค้ด QML ในลักษณะเดียวกับองค์ประกอบ QtQuick อื่นๆ
  • Qt Wayland Compositor ซึ่งเป็นระบบเรนเดอร์แบบมัลติเธรดสำหรับอุปกรณ์ฝังตัวที่ใช้โปรโตคอล Wayland ให้การสนับสนุนโปรโตคอล linux-dmabuf-unstable-v1 และ wp_viewporter มีการเพิ่มการรองรับโปรโตคอล fullscreen-shell-unstable-v1 ให้กับส่วนประกอบแพลตฟอร์มสำหรับ Wayland
  • ในโมดูลเพื่อรองรับแพลตฟอร์ม Android ได้มีการเพิ่มความสามารถในการใช้กล่องโต้ตอบดั้งเดิมสำหรับการทำงานกับไฟล์ ข้อกำหนดสำหรับเวอร์ชันแพลตฟอร์มขั้นต่ำได้รับการยกระดับเป็น Android 5.0 (API ระดับ 21)
  • Qt 3D ได้เพิ่มการสนับสนุนสำหรับการนำเข้าและส่งออกตัวเรนเดอร์พื้นผิว OpenGL ใช้การสนับสนุนเบื้องต้นสำหรับการนำเข้าฉาก glTF 2.0
  • โมดูล Qt Script เลิกใช้แล้วและจะถูกลบออกในรุ่นต่อๆ ไป
    Qt Quick Controls 1 และ Qt XmlPatterns โมดูล Qt Canvas 3D ถูกลบออกแล้ว

ที่มา: opennet.ru

เพิ่มความคิดเห็น