पेश है सीएसएस की चार नई अंतरराष्ट्रीय सुविधाएं

Jack J
Jack J

सीएसएस टेक्स्ट मॉड्यूल लेवल 4 से, सीएसएस की चार नई अंतरराष्ट्रीय सुविधाएं Chrome में लॉन्च की जा रही हैं. इस पोस्ट में बताया गया है कि कौनसी सुविधाएं पहले ही लॉन्च हो चुकी हैं और कौनसी जल्द ही लॉन्च होने वाली हैं.

  • Chrome 119 से: word-break: auto-phrase के साथ जैपनीज़ फ़्रेज़ लाइन ब्रेकिंग.
  • Chrome 120 से मिले फ़्लैग के पीछे: text-autospace प्रॉपर्टी के साथ इंटर-स्क्रिप्ट स्पेस.
  • अभी काम चल रहा है: text-spacing-trim प्रॉपर्टी की मदद से, चाइनीज़, जैपनीज़, और कोरियन (CJK) विराम चिह्नों के लिए कर्निंग.
  • सभी भाषाओं में फ़ॉन्ट का साइज़ एक जैसा होना चाहिए.

जापानी वाक्यांश के लिए लाइन ब्रेक: word-break: auto-phrase

इस सुविधा की मदद से, जैपनीज़ टेक्स्ट पढ़ना आसान हो जाता है. यह सुविधा Chrome 119 में उपलब्ध है

पूर्वी एशिया की कुछ भाषाएं, जैसे कि चाइनीज़ या जैपनीज़, शब्दों को अलग करने के लिए स्पेस का इस्तेमाल नहीं करतीं. साथ ही, लाइनें किसी भी वर्ण के बीच में आ सकती हैं, भले ही वह किसी शब्द के बीच में हो. इन भाषाओं में, लाइन ब्रेक करने का यह सामान्य तरीका है. हालांकि, हेडिंग या कविताओं जैसे छोटे टेक्स्ट में, वाक्यांश की प्राकृतिक सीमाओं पर लाइनें रैप करना बेहतर होता है. जैपनीज़ में, इस सीमा को "बुनसेत्सु" कहा जाता है.

सीएसएस की नई सुविधा word-break: auto-phrase से पता चलता है कि रैपिंग ऐसी सीमाओं पर होनी चाहिए.

<html lang="ja">
<style>
h1 {
  word-break: auto-phrase;
}
</style>

<h1>窓ぎわのトットちゃん<h1>
word-break: auto-phrase, वाक्यांश की प्राकृतिक सीमा पर लाइन को रैप करता है.
word-break: auto-phrase, वाक्यांश की सामान्य सीमा पर लाइन को रैप करता है.

सीमा का पता लगाने का काम, मशीन लर्निंग इंजन करता है. इसलिए, हो सकता है कि आपको मनमुताबिक नतीजे न मिलें. ऐसा होने पर, ब्रेक के पॉइंट को मैन्युअल तरीके से अडजस्ट किया जा सकता है. <wbr> टैग या ज़ीरो विड्थ स्पेस (&ZeroWidthSpace;), ब्रेक करने की सुविधा को लागू करता है. वहीं, ज़ीरो विड्थ जॉइनर (&zwj;) ब्रेक करने की सुविधा को रोकता है.

窓ぎわの<wbr>トットちゃん
ユーザー<wbr>インターフェース

फ़िलहाल, Chrome पर यह सुविधा सिर्फ़ जैपनीज़ भाषा के लिए उपलब्ध है. इसके लिए, BudouX C++ पोर्ट का इस्तेमाल किया जाता है, जो AdaBoost ML टेक्नोलॉजी का इस्तेमाल करता है. इसके बारे में Google Developers Japan: BudouX: 読 हाथやက改イ話めमॉडल軽量分사ち書 acceptedडि के बारे में ज़्यादा पढ़ें.

हम Chrome के आने वाले वर्शन में, कोरियन और चाइनीज़ भाषाओं के लिए भी यह सुविधा उपलब्ध कराएंगे.

स्क्रिप्ट के बीच की स्पेसिंग: text-autospace

फ़िलहाल, यह सुविधा Chrome में फ़्लैग के तौर पर उपलब्ध है. इसकी जांच करने के लिए, Chrome 120 या उसके बाद के वर्शन में वेब प्लैटफ़ॉर्म की एक्सपेरिमेंटल सुविधाएं फ़्लैग (chrome://flags/#enable-experimental-web-platform-features में मौजूद) को चालू करें.

चाइनीज़ और जैपनीज़ में कई स्क्रिप्ट, हॅन, लैटिन, और एसीएसआई अंक के साथ-साथ जैपनीज़ में हीरागाना और काताकाना का इस्तेमाल किया जाता है. नॉन-हान आइडियोग्राफ़िक स्क्रिप्ट से स्विच करते समय और उस पर वापस आते समय, थोड़ी जगह छोड़ने से टेक्स्ट को पढ़ने में आसानी होती है.

Chrome, डिफ़ॉल्ट रूप से इंटर-स्क्रिप्ट स्पेस शामिल करने की योजना बना रहा है. इस सुविधा की मदद से, वेब पर भी वही काम किया जा सकता है जो आम तौर पर प्रिंट किए गए कॉन्टेंट को पढ़ने में आसान बनाने के लिए किया जाता है.

नई डिफ़ॉल्ट सेटिंग में, टेक्स्ट को बेहतर तरीके से पढ़ने के लिए, थोड़ी स्पेसिंग लागू की जाती है. इसे text-autospace से कंट्रोल किया जा सकता है.
कॉन्टेंट को बेहतर ढंग से पढ़ने के लिए, नया डिफ़ॉल्ट वर्शन छोटे स्पेस लागू करता है, जिसे text-autospace की मदद से कंट्रोल किया जा सकता है.

इस विकल्प को बंद करने के लिए, text-autospace प्रॉपर्टी का इस्तेमाल करें. इससे, स्पेसिंग को कंट्रोल किया जा सकता है.

text-autospace: no-autospace;

CJK विराम चिह्न के लिए केर्निंग: text-spacing-trim

नीचे दी गई सुविधा पर अभी काम चल रहा है. इसका मकसद यह है कि यह Chrome में डिफ़ॉल्ट रूप से चालू हो.

चाइनीज़, जैपनीज़, और कोरियन भाषाओं में, विराम चिह्न के बीच कर्निंग लागू करने से टेक्स्ट को पढ़ना आसान हो जाता है और टाइपोग्राफ़ी बेहतर होती है. ज़्यादातर प्रिंट किए गए कॉन्टेंट और वर्ड प्रोसेसर में, आज भी यह कर्निंग लागू होती है.

उदाहरण के लिए, CJK पीरियड और CJK क्लोज़ पैरेन्थिसिस को आम तौर पर, ग्लिफ़ स्पेस के दाएं आधे हिस्से में ग्लिफ़ के बीच के स्पेस के लिए डिज़ाइन किया जाता है, ताकि हर वर्ण के बीच एक जैसा स्पेस हो.

हालांकि, जब ये विराम चिह्न एक पंक्ति में दिखते हैं, तो ग्लिफ़ के बीच की जगह ज़्यादा हो जाती है. यहां दिए गए दो उदाहरणों में, दूसरा उदाहरण सही टाइपोग्राफ़ी है. सीजेके अवधि के दाएं हिस्से को हटा देना चाहिए.

जब विराम चिह्न वाली लाइन दिखती है, तो CJK पीरियड का दायां आधा हिस्सा हटा दिया जाना चाहिए.
जब विराम चिह्न वाली लाइन दिखती है, तो CJK पीरियड के दाएं आधे हिस्से को हटा दिया जाना चाहिए.

डिफ़ॉल्ट तौर पर, इसकी सेटिंग से आम तौर पर अच्छे नतीजे मिलते हैं. हालांकि, डेवलपर अलग-अलग स्टाइल चुनने या कुछ मामलों में इसे बंद करने के लिए, text-spacing-trim प्रॉपर्टी का इस्तेमाल कर सकते हैं.

सभी भाषाओं में फ़ॉन्ट का कम से कम साइज़ एक जैसा होना चाहिए

Chrome 118 से पहले, 10 पिक्सल या उससे कम साइज़ के फ़ॉन्ट को बताए गए तरीके से रेंडर नहीं किया जाता था. हालांकि, अगर भाषा ऐरेबिक, फ़ारसी, जैपनीज़, कोरियन, थाई, सिंप्लिफ़ाइड या ट्रेडिशनल चाइनीज़ थी, तो उसे राउंड अप कर दिया जाता था. डेवलपर को छोटे टेक्स्ट को रेंडर करने के लिए किसी तरीके की ज़रूरत थी. उदाहरण के लिए, transform प्रॉपर्टी का इस्तेमाल करके.

Chrome 118 से, सभी भाषाओं के लिए यह सीमा हटा दी गई है. ऐसा करने से, बाकी सभी भाषाओं के लिए यह सीमा उपलब्ध हो जाती है. इस बदलाव से, अन्य ब्राउज़र के साथ इंटरऑपरेबिलिटी (दूसरे सिस्टम के साथ काम करना) को बेहतर बनाया जा सकता है.

Chrome 118 में, अरबी, फ़ारसी, जैपनीज़, कोरियन, थाई, आसान चाइनीज़ या ट्रैडिशनल चाइनीज़ भाषाओं के लिए, फ़ॉन्ट साइज़ 10 पिक्सल या उससे कम होने पर, उसे तय किए गए तरीके से रेंडर न करने की पाबंदी हटा दी गई है.
Chrome 118 में, ऐरेबिक, फ़ारसी, जैपनीज़, कोरियन, थाई, सिंप्लिफ़ाइड या ट्रेडिशनल चाइनीज़ के लिए, फ़ॉन्ट साइज़ की यह सीमा हटा दी गई है कि 10 पिक्सल या उससे कम साइज़ के फ़ॉन्ट, तय किए गए साइज़ के मुताबिक रेंडर नहीं होते.

दिलचस्पी बढ़ाएं और सुझाव दें

अगर आपको इन सुविधाओं के बारे में कोई सुझाव, शिकायत या राय देनी है, तो कृपया crbug.com पर समस्या दर्ज करें.