GTK বা GIMP টুলকিট হল একটি ক্রস-প্ল্যাটফর্ম গ্রাফিক্যাল কম্পোনেন্ট লাইব্রেরি যা গ্রাফিকাল ইউজার ইন্টারফেস তৈরির জন্য।
GTK 4.14-এর এই নতুন সংস্করণে উপস্থাপিত হয়েছে "NGL" এবং "Vulkan" নামে নতুন ইউনিফাইড রেন্ডারিং ইঞ্জিনগুলি আলাদা যা OpenGL (GL 3.3+ এবং GLES 3.0+) এবং Vulkan গ্রাফিক্স API উভয়ই ব্যবহার করে। উভয় ইঞ্জিন তারা Vulkan API এর উপর ভিত্তি করে, কিন্তু "NGL" ইঞ্জিন OpenGL-এর জন্য একটি পৃথক বিমূর্ততা স্তর উপস্থাপন করে যা Vulkan এর উপরে চলে, উভয় API-এর মধ্যে পার্থক্য বিবেচনা করে। এই পদ্ধতিটি দৃশ্য গ্রাফিক্স প্রক্রিয়াকরণ, রূপান্তর, টেক্সচার ক্যাশিং এবং গ্লিফের জন্য উভয় ইঞ্জিনে একটি সাধারণ অবকাঠামো ব্যবহারের অনুমতি দিয়েছে। একীকরণ উভয় ইঞ্জিনের কোড বেস রক্ষণাবেক্ষণের পাশাপাশি তাদের আপডেট এবং সিঙ্ক্রোনাইজেশনকে উল্লেখযোগ্যভাবে সরল করেছে।
এটি উল্লেখ করা হয় পুরানো "GL" ইঞ্জিনের বিপরীতে, যা প্রতিটি ধরণের রেন্ডার নোডের জন্য একটি পৃথক সাধারণ শেডার নিযুক্ত করে এবং অফ-স্ক্রিন রেন্ডারিংয়ের সময় পর্যায়ক্রমে ডেটা পুনর্বিন্যাস করে, নতুন ইঞ্জিনগুলি অফ-স্ক্রিন রেন্ডারিংয়ের জন্য একটি জটিল শেডার (উবারশেডার) ব্যবহার করে, বাফার তথ্য ব্যাখ্যা. নতুন ইঞ্জিনগুলির স্বতন্ত্র বৈশিষ্ট্যগুলির মধ্যে রয়েছে অ্যান্টি-অ্যালিয়াসিং, যা আপনাকে সূক্ষ্ম বিবরণ সংরক্ষণ করতে এবং মসৃণ কনট্যুর, নির্বিচারে গ্রেডিয়েন্ট গঠন, যে কোনও সংখ্যক রঙ এবং অ্যান্টি-আলিয়াসিং এবং ভগ্নাংশ স্কেলিংকে সমর্থন করে। নতুন "NGL" রেন্ডারিং ইঞ্জিনটি ডিফল্টরূপে সক্রিয় করা হয়েছে, যেমন Vulkan গ্রাফিক্স API-এর জন্য সমর্থন। ডিফল্ট কনফিগারেশন সংহত করার সময়, Vulkan 1.3-এর জন্য সমর্থন এখন প্রয়োজন।
GTK 4.14-এর মধ্যে আরেকটি পরিবর্তন দেখা যায় GSK (GTK দৃশ্য কিট) লাইব্রেরি, যা OpenGL এবং Vulkan এর মাধ্যমে গ্রাফিকাল দৃশ্য রেন্ডার করার ক্ষমতা প্রদান করে, টেক্সট প্রদর্শন করার সময় ফন্ট রেন্ডারিং, টুলটিপস এবং অ-পূর্ণসংখ্যা স্কেল মানগুলির ব্যবহার সম্পর্কিত উল্লেখযোগ্য উন্নতি দেখেছে। কম-রেজোলিউশনের ডিসপ্লেতে স্পষ্টতা উন্নত করতে রাস্টারাইজেশনের সময় গ্লাইফ কনট্যুর স্মুথিং প্রয়োগ করা হয়েছে, পাশাপাশি পরামর্শ দেওয়ার সময় গ্লিফের সাব-পিক্সেল পজিশনিং। অ-পূর্ণসংখ্যা স্কেল মানগুলিতেও ফন্ট রেন্ডারিং গুণমান উন্নত করা হয়েছে, যেমন 125%। অতিরিক্তভাবে, গ্লিফ এবং টেক্সচারের জন্য ক্যাশে আইটেম উচ্ছেদের জন্য সমর্থন যোগ করা হয়েছে, যা গ্লাইফ ক্যাশিংয়ের কার্যকারিতা উন্নত করেছে।
এটি ছাড়াও, GTK-তে "পাথ"-এর জন্য সমর্থন যোগ করা হয়েছে, রেখার ক্রম বা ঘন এবং চতুর্মুখী বেজিয়ার বক্ররেখা ব্যবহার করে আকার এবং এলাকা আঁকার অনুমতি দেয়। পাথের সাথে আঁকার জন্য, GTK-তে বেশ কিছু অবজেক্ট চালু করা হয়েছে, যেমন GskPath রেখা বা বক্ররেখার জন্য প্যারামিটার নির্ধারণ করতে, বক্ররেখা তৈরি করতে GskPathBuilder, একটি আকৃতিতে একটি বিন্দু সেট করার জন্য GskPathPoint এবং একটি পথের দৈর্ঘ্যের মতো পরিমাপ করার জন্য GskPathMeasure .
অন্যদিকে, GDK লাইব্রেরি, যা GTK এবং গ্রাফিক্স সাবসিস্টেমের মধ্যে একটি স্তর হিসাবে কাজ করে, DMA-BUF প্রক্রিয়ার জন্য তার সমর্থনকে প্রসারিত করেছে, এটি উল্লেখ করা হয়েছে যে এই প্রক্রিয়াটি একটি বর্ণনাকারীর দ্বারা সম্বোধন করা কার্নেল-স্তরের বাফার ব্যবহারের অনুমতি দেয়। , যা কার্নেল সাব-সিস্টেমগুলির মধ্যে ডাটা সরাসরি স্থানান্তর করতে সক্ষম করে তাদের অনুলিপি করার প্রয়োজন ছাড়াই। GTK-এর প্রেক্ষাপটে, DMA-BUF-এর জন্য সমর্থন কম্পোজ করার সময় এবং ভিডিওর সাথে কাজ করার সময় পিক্সেল ডেটা কপি ক্রিয়াকলাপগুলিকে ন্যূনতম করতে ব্যবহৃত হয়। উদাহরণস্বরূপ, dmabuf-এ একটি হার্ডওয়্যার ডিকোডার ব্যবহার করে ভিডিও রেকর্ড করা যেতে পারে, তারপরে একটি Wayland পৃষ্ঠের সাথে সংযুক্ত করা হয়, এবং অবশেষে ডেটার অতিরিক্ত অনুলিপি ছাড়াই স্ক্রিনে প্রদর্শনের জন্য একটি কম্পোজিশন ম্যানেজারের কাছে পাঠানো হয়।
জটিলভাবে ফরম্যাট করা টেক্সট প্রদর্শন, WebKitGTK-এর অপারেশন, এবং বিজ্ঞপ্তির প্রদর্শন সম্পর্কিত প্রতিবন্ধী ব্যক্তিদের জন্য উল্লেখযোগ্য উন্নতি রয়েছে।
এর অন্যান্য পরিবর্তন যে দাঁড়ানো এই নতুন সংস্করণ:
- ARIA স্পেসিফিকেশনের জন্য সমর্থন উন্নত করা হয়েছে, এবং GtkAccessibleText ইন্টারফেস তৃতীয় পক্ষের পাঠ্য উইজেটগুলিতে অ্যাক্সেসযোগ্যতা বৈশিষ্ট্যগুলি ব্যবহার করার জন্য যুক্ত করা হয়েছে।
- GtkText ইন্টারফেস AT-SPI প্রোটোকলের জন্য তার সমর্থনকে প্রসারিত করেছে, স্ক্রিন রিডারদের সাথে মিথস্ক্রিয়া করার অনুমতি দেয়।
- GtkPrintDialog ক্লাসটি প্রিন্ট ডায়ালগ তৈরি করতে এবং একটি অ্যাসিঙ্ক্রোনাস API প্রদান করতে যোগ করা হয়েছে যা GtkPrintOperation-এর পরিবর্তে ব্যবহার করা যেতে পারে।
- এই উইজেটটি ইমোজি ডেটা আপডেট করেছে এবং এখন বিভিন্ন লোকেল বিবেচনা করে বিভিন্ন ভাষায় অনুসন্ধান করার ক্ষমতা দেয়।
- GtkEntry উইজেটে ব্যবহারকারীর পরিবর্তনের ট্র্যাকিং উন্নত করা হয়েছে, যা পূর্বাবস্থায় ফেরানো ক্রিয়াকলাপ বাস্তবায়ন করা সহজ করে তোলে।
- ব্যবহারকারীর অভিজ্ঞতা উন্নত করতে GtkFileChooser উইজেটে ফাইল নির্বাচন ডায়ালগ খোলার গতি বাড়ান।
- GTK ইন্সপেক্টর এখন সহজ ডিবাগিং এবং কর্মক্ষমতা বিশ্লেষণের জন্য OpenGL, সাবসারফেস এবং FPS সম্পর্কে তথ্যের ভিজ্যুয়ালাইজেশন প্রদান করে।
- নোড এবং জটিল সম্পাদনাগুলির সাথে কাজ করার সময় আরও সুবিধার জন্য gtk4-নোড-সম্পাদক ইউটিলিটিতে এখন স্বয়ংক্রিয়ভাবে রেকর্ডিং সমর্থন রয়েছে।
আপনি যদি এটি সম্পর্কে আরও জানতে আগ্রহী হন তবে আপনি এখানে বিশদে পরামর্শ করতে পারেন নিম্নলিখিত লিঙ্ক।