Windows-এ Chromium-ভিত্তিক ব্রাউজারে আরও ভালো টেক্সট রেন্ডারিং

কার্ট ক্যাটি-শ্মিট
Kurt Catti-Schmidt
প্যাট্রিক ব্রোসেট
Patrick Brosset

প্রকাশিত: ১২ ফেব্রুয়ারি, ২০২৫

একটি ওয়েব রেন্ডারিং ইঞ্জিনের কাজ ব্যাপক, এবং এর বেশিরভাগ কাজ, যেমন স্টাইলিং, মিডিয়া বা লেআউট, বিভিন্ন স্ট্যান্ডার্ড দ্বারা পরিচালিত হয়। এই স্ট্যান্ডার্ডগুলো নিশ্চিত করে যে স্বতন্ত্র ইঞ্জিনগুলো একে অপরের সাথে কাজ করতে পারে, যা ওয়েবের বিকাশে সাহায্য করেছে। কিন্তু কিছু সূক্ষ্ম বিষয়, যেমন পিক্সেল স্তরে টেক্সট কীভাবে রেন্ডার করা হবে, তা প্রায়শই স্ট্যান্ডার্ড সংস্থাগুলোর ব্যাখ্যার উপর ছেড়ে দেওয়া হয় এবং শেষ পর্যন্ত ব্রাউজারগুলো যে অপারেটিং সিস্টেমে চলে, তার উপরই নির্ভর করতে হয়।

২০২০ সালে মাইক্রোসফট এজ একটি বিরল সুযোগ পেয়েছিল—এর অন্তর্নিহিত রেন্ডারিং ইঞ্জিনের সম্পূর্ণ প্রতিস্থাপন। এজ শুধুমাত্র উইন্ডোজ-ভিত্তিক প্ল্যাটফর্ম থেকে, যেখানে এটি সরাসরি উইন্ডোজ এপিআই ব্যবহার করত, ক্রোমিয়ামে স্থানান্তরিত হয় এবং একটি সত্যিকারের ক্রস-প্ল্যাটফর্ম ওয়েব রেন্ডারারে পরিণত হয়। ক্রোমিয়ামে স্থানান্তরের আগে, এজ টেক্সট রেন্ডারিংয়ের জন্য সম্পূর্ণরূপে ডিরেক্টরাইট নামক একটি উইন্ডোজ এপিআই-এর উপর নির্ভর করত। তবে, ক্রোমিয়াম স্কিয়া নামক একটি শক্তিশালী ও নমনীয় ক্রস-প্ল্যাটফর্ম গ্রাফিক্স ইঞ্জিনের উপর নির্ভর করে, যা এর এপিআই থেকে অপারেটিং সিস্টেম-নির্দিষ্ট অনেক কোডকে আড়াল করে রাখে।

এজ যখন ক্রোমিয়ামে স্থানান্তরিত হচ্ছিল, তখন এজ টিম তাদের ব্যবহারকারীদের কাছ থেকে ক্রোমিয়াম রেন্ডারিং ইঞ্জিন সম্পর্কে মতামত সংগ্রহের সুযোগ পেয়েছিল। একটি মতামত ছিল বেশ গুরুত্বপূর্ণ—অনেক এজ ব্যবহারকারী জানিয়েছিলেন যে লেখাগুলো "ফ্যাকাশে" দেখাতো এবং উইন্ডোজের অন্যান্য অংশের লেখার সাথে এর কোনো সামঞ্জস্য ছিল না।

উইন্ডোজ ১৩২-এর পূর্ববর্তী সংস্করণে ক্রোম ব্রাউজারে লেখা বিবর্ণ দেখাচ্ছিল।

দলটি এই মতামতটিকে গুরুত্ব সহকারে নিয়েছিল এবং কিছু তদন্ত করেছিল। যদিও স্কিয়া ফন্ট খোঁজার মতো নির্দিষ্ট কিছু কাজের জন্য উইন্ডোজে ডিরেক্টরাইট ব্যবহার করে, তবে চূড়ান্ত টেক্সট র‍্যাস্টারাইজেশনের কাজটি আসলে সরাসরি স্কিয়াই করে থাকে। আর ব্যবহারকারীদের কাছ থেকে পাওয়া ‘ফ্যাকাশে’ ভাবের মতামতের একটি প্রধান কারণ হলো টেক্সট রেন্ডারিংয়ের জন্য ব্যবহৃত অভ্যন্তরীণ কনট্রাস্ট এবং গামা সেটিংস।

Edge-এর Chromium-ভিত্তিক ইঞ্জিন এবং এর পূর্ববর্তী ইঞ্জিনের মধ্যে টেক্সট কনট্রাস্ট ও গামা মানের ক্ষেত্রে দুটি প্রধান পার্থক্য উন্মোচিত হয়েছে। প্রথমত, Skia উইন্ডোজ ক্লিয়ারটাইপ টিউনার (Windows ClearType Tuner) থেকে টেক্সট কনট্রাস্ট ও গামা মান গ্রহণ করে না। দ্বিতীয়ত, এটি Edge-এর DirectWrite-ভিত্তিক টেক্সট স্ট্যাক দ্বারা ব্যবহৃত মানগুলোর চেয়ে ভিন্ন ডিফল্ট মান ব্যবহার করে।

গত বছর, এজ টিম সরাসরি ক্রোমিয়ামে ক্লিয়ারটাইপ টিউনার ভ্যালুগুলো মেনে চলার জন্য সাপোর্ট যুক্ত করেছে। এর ফলে ক্রোমিয়াম-ভিত্তিক ব্রাউজার ব্যবহারকারীরা উইন্ডোজে টেক্সট কনট্রাস্ট এবং গামা সেটিংস নিয়ন্ত্রণ করার ক্ষমতা পেয়েছেন। যদিও এটি সঠিক পথে একটি গুরুত্বপূর্ণ পদক্ষেপ ছিল, বেশিরভাগ ব্যবহারকারীই তাদের সিস্টেম-ব্যাপী টেক্সট কনট্রাস্ট এবং গামা সেটিংস অ্যাডজাস্ট করেন না। তাই এই যাত্রার পরবর্তী পর্যায় ছিল ওয়েব এবং ব্রাউজার UI টেক্সট কন্টেন্ট উভয়ের জন্যই ডিফল্ট টেক্সট কনট্রাস্ট এবং গামা সেটিংস অ্যাডজাস্ট করার বিষয়টি গুরুত্ব সহকারে বিবেচনা করা।

ওয়েবে লেখার চেহারা পরিবর্তন করা একটি বিশাল কাজ। ওয়েব বরাবরই লেখানির্ভর, এবং এর জন্য একটি উচ্চ-মানের টেক্সট ইঞ্জিন প্রয়োজন। এটা স্পষ্ট ছিল যে লেখার কনট্রাস্ট ভ্যালু বাড়ানো দরকার, কিন্তু ঠিক কতটা পরিবর্তন করতে হবে তা নির্ধারণ করার জন্য ডেটার প্রয়োজন ছিল।

২০২১ সালে এজ টিম বিভিন্ন টেক্সট কনট্রাস্ট ভ্যালু নিয়ে পরীক্ষা-নিরীক্ষা শুরু করে। ব্যাপক ব্যবহারকারী গবেষণার পর, এজ এবং ক্রোমিয়াম উভয়ের সদস্যরা এই সিদ্ধান্তে উপনীত হন যে, ১.০ কনট্রাস্ট ভ্যালুটি ক্রোমিয়াম-পূর্ববর্তী এজ-এর টেক্সট রেন্ডারিংয়ের সাথে ঘনিষ্ঠভাবে মিলে যায় এবং অন্যান্য নেটিভ উইন্ডোজ অ্যাপ্লিকেশনের তুলনায় সামঞ্জস্যপূর্ণ দেখায়।

এজ টিমে আমরা বিশ্বাস করতাম যে আমাদের গবেষণা ও পরীক্ষা-নিরীক্ষা উইন্ডোজের সামগ্রিক ক্রোমিয়াম কমিউনিটির জন্য উপকারী হতে পারে, তাই আমরা আমাদের প্রাপ্ত ফলাফল গুগলের ক্রোম টিমের সাথে শেয়ার করি, যারা তাদের নিজস্ব পরীক্ষার মাধ্যমে তা নিশ্চিত করে। এরপর আমরা ক্রোম ১৩২ থেকে শুরু করে উইন্ডোজ বিল্ডগুলোর জন্য নতুন কনট্রাস্ট ভ্যালুটি ডিফল্টভাবে চালু করে দিই।

আজ, উইন্ডোজে ক্রোমিয়াম-ভিত্তিক ব্রাউজারের সকল ব্যবহারকারী বিগত বছরগুলোর এই সম্মিলিত গবেষণা, পরীক্ষা-নিরীক্ষা এবং বাস্তবায়ন থেকে উপকৃত হতে পারেন।

সুইচ করার পর লেখাগুলো স্পষ্ট ও ঝকঝকে দেখাচ্ছে।

এই প্রকল্পে অবদানের জন্য মাইক্রোসফটের ইয়ান প্রেস্ট, ড্যানিয়েল লিবি ও অ্যালিসন মাহের এবং গুগলের ডমিনিক রটশেস, ডেভিড ইয়াং, বেন ওয়াগনার ও ব্রায়ান ওসমানকে বিশেষ ধন্যবাদ!