මාස හතක සංවර්ධනයෙන් පසු, චිත්රක පරිශීලක අතුරුමුහුණතක් නිර්මාණය කිරීම සඳහා බහු-වේදිකා මෙවලම් කට්ටලයක් නිකුත් කිරීම ප්රකාශයට පත් කර ඇත - GTK 4.14.0. GTK 4 නව සංවර්ධන ක්රියාවලියක කොටසක් ලෙස සංවර්ධනය වෙමින් පවතින අතර එය යෙදුම් සංවර්ධකයින්ට වසර කිහිපයක් සඳහා ස්ථාවර සහ සහාය දක්වන API ලබා දීමට උත්සාහ කරන අතර එය ඊළඟ GTK හි API වෙනස්වීම් හේතුවෙන් සෑම මාස හයකට වරක් යෙදුම් නැවත ලිවීමට බියෙන් තොරව භාවිතා කළ හැකිය. ශාඛාව.
අනාගතයේදී, GTK4.90 හි අනාගත නිකුතුව සඳහා ක්රියාකාරීත්වය වර්ධනය කරන පර්යේෂණාත්මක ශාඛාවක් 5 පිහිටුවීමට සැලසුම් කර ඇත. GTK5 ශාඛාවෙහි API මට්ටමින් ගැළපුම උල්ලංඝනය කරන වෙනස්කම් ඇතුළත් වනු ඇත, උදාහරණයක් ලෙස, පැරණි ගොනු තේරීම් සංවාදය වැනි සමහර විජට් අවලංගු කිරීමට අදාළ වේ. GTK5 ශාඛාවේ X11 ප්රොටෝකෝලය සඳහා වන සහාය අවසන් කිරීමේ හැකියාව සහ වේලන්ඩ් ප්රොටෝකෝලය භාවිතයෙන් පමණක් වැඩ කිරීමේ හැකියාව අත්හැරීමේ හැකියාව ද සාකච්ඡා කෙරේ.
GTK 4.14 හි වඩාත්ම කැපී පෙනෙන වැඩිදියුණු කිරීම් අතර:
- OpenGL (GL 3.3+ සහ GLES 3.0+) සහ Vulkan graphics API භාවිතා කරමින් නව ඒකාබද්ධ විදැහුම්කරණ එන්ජින් "ngl" සහ "vulkan" ඇතුළත් වේ. එන්ජින් දෙකම Vulkan API මත පදනම් වේ, නමුත් "ngl" එන්ජිම OpenGL සහ Vulkan අතර ඇති වෙනස්කම් සැලකිල්ලට ගනිමින් Vulkan මත ධාවනය වන OpenGL සඳහා වෙනම වියුක්ත ස්ථරයක් ඇත. මෙම ප්රවේශය මඟින් දර්ශන ප්රස්ථාරය, පරිවර්තන, හැඹිලි වයනය සහ ග්ලයිෆ් සැකසීම සඳහා එන්ජින් දෙකෙහිම පොදු යටිතල පහසුකම් භාවිතා කිරීමට හැකි විය. ඒකාබද්ධ කිරීම මඟින් එන්ජින් දෙකෙහිම කේත පදනම නඩත්තු කිරීම සහ ඒවා යාවත්කාලීනව තබා ගැනීම සහ සමමුහුර්ත කිරීම සැලකිය යුතු ලෙස සරල කර ඇත.
පැරණි gl එන්ජිම මෙන් නොව, එක් එක් විදැහුම් නෝඩ් සඳහා වෙනම සරල සෙවනක් භාවිතා කරන අතර, ඕෆ්ස්ක්රීන් විදැහුම්කරණයේදී වරින් වර දත්ත නැවත අනුපිළිවෙලට සකස් කරන ලද, නව එන්ජින් ඕෆ්ස්ක්රීන් විදැහුම්කරණය වෙනුවට බෆරයෙන් දත්ත අර්ථකථනය කරන සංකීර්ණ සෙවනක් (ubershader) භාවිතා කරයි. . නව එන්ජින්වල සුවිශේෂී ලක්ෂණ අතර, සමෝච්ඡ සුමටනය (සියුම් විස්තර ආරක්ෂා කර ගැනීමට සහ සුමට සමෝච්ඡයන් ඇඳීමට ඔබට ඉඩ සලසයි), අත්තනෝමතික අනුක්රම සෑදීම (ඕනෑම වර්ණ ගණනක් සහ ප්රති-අන්වර්ථකරණය භාවිතා කළ හැකිය) සහ භාගික පරිමාණය සඳහන් වේ.
- නව "ngl" විදැහුම්කරණ එන්ජිම පෙරනිමියෙන් සක්රීය කර ඇති අතර, Vulkan චිත්රක API සඳහා සහය ද පෙරනිමියෙන් සක්රීය කර ඇත. පෙරනිමි වින්යාසය තුළ ගොඩනැගීමේදී, Vulkan 1.3 සහාය දැන් අවශ්ය වේ.
- OpenGL සහ Vulkan හරහා ග්රැෆික් දර්ශන විදැහුම් කිරීමේ හැකියාව සපයන GSK පුස්තකාලය (GTK Scene Kit), අකුරු විදැහුම්කරණය, ඉඟි කිරීම සහ පෙළ ප්රදර්ශනය කිරීමේදී නිඛිල නොවන පරිමාණ අගයන් භාවිතය සම්බන්ධ සැලකිය යුතු දියුණුවක් සිදු කර ඇත. ඉඟි කරන විට (අඩු-විභේදන තිර මත පැහැදිලි බව වැඩි කිරීම සඳහා rasterization තුළ glyph දළ සටහන සුමට කිරීම), glyphs උප පික්සල් ස්ථානගත කිරීම ක්රියාත්මක වේ. අකුරු විදැහුම්කරණයේ ගුණාත්මක භාවය නිඛිල නොවන පරිමාණ අගයන් හිදී වැඩි දියුණු කර ඇත (උදාහරණයක් ලෙස, 125%). ග්ලයිෆ් සහ වයනය සඳහා හැඹිලි වලින් මූලද්රව්ය ඉවත් කිරීම සඳහා ක්රියාත්මක කරන ලද සහාය. ග්ලයිෆ් හැඹිලියේ වැඩි දියුණු කළ කාර්යක්ෂමතාව.
- GPU විදැහුම්කරණයට පක්ෂව කයිරෝ පුස්තකාලය භාවිතයෙන් ඉවත් වීමේ කොටසක් ලෙස, රේඛා අනුපිළිවෙලක් හෝ ඝන සහ හතරැස් බෙසියර් වක්ර භාවිතා කරමින් හැඩතල සහ ප්රදේශ ඇඳීම සඳහා “මාර්ග” සඳහා සහය එක් කර ඇත. මාර්ග සමඟ ඇඳීම සඳහා, රේඛා හෝ වක්රවල පරාමිතීන් නිර්වචනය කරන GskPath වස්තුවක් මෙන්ම වක්ර සෑදීම සඳහා GskPathBuilder වස්තු ද, රූපයක් මත ලක්ෂ්යයක් අර්ථ දැක්වීම සඳහා GskPathPoint ද, මාර්ගයක දිග වැනි මිනුම් ගැනීම සඳහා GskPathMeasure ද ඇත.

- GTK සහ ග්රැෆික් උපපද්ධතිය අතර ස්ථරයක් සපයන GDK පුස්තකාලය, DMA-BUF යාන්ත්රණය සඳහා පුළුල් සහය ලබා දී ඇත, එය විස්තරයක් භාවිතයෙන් ආමන්ත්රණය කරන ලද කර්නල් මට්ටමේ බෆර භාවිතා කිරීමට ඉඩ සලසයි, එමඟින් පික්සල් දත්ත පිටපත් කිරීම වෙනුවට එය කළ හැකි වේ. විස්තරයක් හරහා කර්නල් උප පද්ධති අතර ඒවා මාරු කිරීමට. GTK හි සන්දර්භය තුළ, සංයුක්ත කිරීමේදී සහ වීඩියෝ සමඟ වැඩ කිරීමේදී පික්සල් දත්ත පිටපත් කිරීම අවම කිරීමට DMA-BUF භාවිතා කළ හැකිය (උදාහරණයක් ලෙස, dmabuf හි දෘඪාංග විකේතකයක් මඟින් වීඩියෝව පටිගත කළ හැකි අතර, පසුව වේලන්ඩ් මතුපිටකට අමුණා එය වෙත මාරු කළ හැක. UI සඳහා සංයුක්ත කළමණාකරු සහ අනවශ්ය දත්ත පිටපත් කිරීමේ මෙහෙයුම් නොමැතිව තිරයට සංයුක්ත කිරීම ප්රතිදානය).
වීඩියෝ වැනි අන්තර්ගත සංයුක්ත කළමණාකරු වෙත සෘජුවම යැවීමට GtkGraphicsOffload විජට් එකක් එක් කර ඇත (GSK විදැහුම්කරණය මඟ හරිමින්), සහ GdkDmabufTextureBuilder පන්තියක් එකතු කර dmabuf වෙතින් GdkTexture වස්තු නිර්මාණය කිරීම සඳහා සෘජුව මාරු කිරීම සඳහා අන්තර්ගත කර ඇත. Pipewire, video4linux හෝ gstreamer dmabuf සඳහා මූලාශ්රයක් ලෙස භාවිතා කළ හැක. dmabuf NV16, NV61, NV24, NV42 සහ YUV ආකෘති සඳහා සහය දක්වයි.
- GtkPrintDialog පන්තිය එකතු කරන ලදී, මුද්රණ සංවාද ජනනය කිරීම සඳහා නිර්මාණය කර ඇති අතර GtkPrintOperation වෙනුවට භාවිතය සඳහා අසමමුහුර්ත API එකක් පිරිනැමේ.
- GtkEmojiChooser විජට් එක Emoji දත්ත යාවත්කාලීන කර ඇති අතර විවිධ ස්ථාන සැලකිල්ලට ගනිමින් විවිධ භාෂාවලින් සෙවීමේ හැකියාව එක් කර ඇත.
- GtkEntry විජට් පරිශීලකයා විසින් සිදු කරන ලද වෙනස්කම් නිරීක්ෂණය කිරීම වැඩිදියුණු කර ඇත.
- GtkFileChooser විජට් තුළ, ගොනු තේරීම් සංවාදය විවෘත කිරීම වේගවත් කර ඇත.
- යතුරුපුවරු කෙටිමං සහ තිර අභිනයන් සඳහා මෙවලම් ඉඟි පෙන්වන GtkShortcutsWindow පන්තිය කුඩා තිර සඳහා අනුවර්තනය කර ඇත.
- පරීක්ෂණ මාදිලිය (GTK පරීක්ෂක) OpenGL, subsurfaces සහ FPS පිළිබඳ තොරතුරු ප්රදර්ශනය කරයි.
- gtk4-rendernode-tool utility වෙත "compare" විධානය එක් කරන ලදී.
- නව උපයෝගිතා, gtk4-path-tool, මාර්ග සමඟ වැඩ කිරීම සඳහා යෝජනා කර ඇත.
- gtk4-node-editor උපයෝගීතාවයට ස්වයංක්රීය පටිගත කිරීමේ සහාය එක් කර ඇත.
- GNOME නොවන Shell-පදනම් පරිසරයක Wayland භාවිතා කරන විට සිදු වූ බිඳ වැටීමක් නිරාකරණය කර ඇත.
- ආබාධ සහිත පුද්ගලයින් සඳහා සංකීර්ණ හැඩතල ගැන්වීමේ පෙළ සංදර්ශනය කිරීම, WebKitGTK හි ක්රියාකාරිත්වය සහ දැනුම්දීම් ප්රදර්ශනය කිරීම සම්බන්ධ නව විශේෂාංග එකතු කරන ලදී. ARIA පිරිවිතර සඳහා වැඩි දියුණු කළ සහාය. තෙවන පාර්ශවීය පෙළ විජට් වල ප්රවේශ්යතා විශේෂාංග භාවිතා කිරීම සඳහා GtkAccessibleText අතුරුමුහුණත එක් කරන ලදී. GtkText අතුරුමුහුණත තිර කියවනය සමඟ අන්තර් ක්රියා කිරීම සඳහා AT-SPI ප්රොටෝකෝලය සඳහා සහය එක් කර ඇත.
- වේදිකාවේ WGL API භාවිතයෙන් GPU භාවිතයෙන් විදැහුම් කිරීමේ හැකියාව එක් කරන ලදී. Windows.
- CSS මත පදනම් වූ තේමා පූරණය කිරීමේදී මතක පරිභෝජනය අඩු වීම.
මූලාශ්රය: opennet.ru

