Chrome 128 में नया

यहां आपके जानने योग्य तथ्य दिए गए हैं:

  • लाइन ब्रेक की मदद से, <ruby> एलिमेंट को बेहतर तरीके से दिखाया जा सकता है.
  • Promise.try की मदद से, Promises को आसानी से चेन किया जा सकता है.
  • PointerEvent को एक से ज़्यादा पेन की पहचान करने के लिए बेहतर बनाया गया है.
  • इसके अलावा, और भी बहुत कुछ है.

मेरी पहचान एड्रियाना जारा है. आइए, जानें कि Chrome 128 में डेवलपर के लिए क्या नया है.

लाइन ब्रेक करने की सुविधा <ruby>

<ruby> एलिमेंट, टेक्स्ट प्रज़ेंटेशन को बेहतर बनाता है. खास तौर पर, यह पूर्वी एशियाई भाषाओं के लिए बेहतर होता है. इसकी मदद से, बेस टेक्स्ट के ऊपर या बगल में फ़ोनैटिक एनोटेशन या अन्य ज़्यादा जानकारी दिखाई जा सकती है.

किसी रूबी एलिमेंट में दो मुख्य हिस्से होते हैं. पहला, रूबी बेस, जो मुख्य टेक्स्ट होता है और दूसरा, रूबी टेक्स्ट, जो एनोटेशन टेक्स्ट होता है. इसे एलिमेंट के साथ मार्क किया जाता है.

पहले, अगर कोई रूबी-बेस या रूबी-टेक्स्ट पूरी लाइन से ज़्यादा लंबा था, तो उसे अलग-अलग रैप किया जाता था. इससे लेआउट में समस्याएं आती थीं.

अब लाइन-ब्रेक करने वाली रूबी, रैप किए गए बेस टेक्स्ट के ऊपर रैप किए गए रूबी एनोटेशन टेक्स्ट को रखती है, ताकि टेक्स्ट को बेहतर तरीके से रेंडर किया जा सके.

उदाहरण और ज़्यादा जानकारी के लिए, लाइन-ब्रेक करने की सुविधा <ruby> और CSS ruby-align प्रॉपर्टी पर जाएं.

Promise.try

Promise.try की मदद से, Promises की मदद से गड़बड़ियों को आसानी से मैनेज किया जा सकता है. आपके पास एक पैटर्न है, जिसमें एक फ़ंक्शन, f है. यह फ़ंक्शन असाइन होने में समय ले सकता है और कोई प्रॉमिस दिखा सकता है या नहीं. दोनों मामलों में गड़बड़ियों को मैनेज करने के लिए, Promise के सेमेंटेक्स का इस्तेमाल किया जा सकता है. इसके लिए, फ़ंक्शन को Promise में रैप करें.

ऐसा करने का एक तरीका Promise.resolve().then(f) है, लेकिन इस मामले में f अगले टिक पर बिना ज़रूरत के एसिंक्रोनस तरीके से चलेगा.

इस समस्या से बचने के लिए, आपको new Promise(resolve => resolve(f())) का इस्तेमाल करना होगा, जो कि बिल्कुल भी सुविधाजनक नहीं है.

Promise.try, यह काम करने का आसान और सीधा तरीका है. इसकी मदद से, एक ऐसी प्रॉमिस चेन शुरू की जा सकती है जो सिंक्रोनस और एसिंक्रोनस, दोनों तरह के अपवाद फ़्लो को हैंडल करने के बजाय, .catch हैंडलर में सभी गड़बड़ियों को पकड़ती है.

ज़्यादा जानने के लिए, Promise.try दस्तावेज़ देखें.

एक से ज़्यादा पेन से इनकिंग करने के लिए PointerEvent.deviceProperties

डेवलपर के पास, इंक वाले डिजिटाइज़र पर दो अलग-अलग पेन के बीच अंतर करने का कोई तरीका नहीं था. मौजूदा PointerEvent.pointerId एट्रिब्यूट को अलग-अलग तरीकों से लागू किया जाता है. यह हर बार स्क्रीन पर होने वाले इंक स्ट्रोक या इंटरैक्शन के लिए हमेशा मौजूद नहीं रहता.

PointerEvent इंटरफ़ेस को अब एक नया एट्रिब्यूट शामिल करने के लिए बढ़ाया गया है: deviceProperties. इसमें uniqueId एट्रिब्यूट होता है, जो सेशन के दौरान बना रहता है. यह दस्तावेज़ से अलग होता है और एक यूनीक आइडेंटिफ़ायर होता है. डेवलपर इसका इस्तेमाल, पेज के साथ इंटरैक्ट करने वाले अलग-अलग पेन की पहचान करने के लिए कर सकता है.

इस बदलाव के बाद, डिजिटाइज़र के साथ इंटरैक्ट करने वाले हर डिवाइस के लिए, खास रंग या पेन के आकार सेट किए जा सकते हैं.

आगे बढ़ने का तरीका में, पॉइंटर इवेंट का इस्तेमाल शुरू करने के बारे में पढ़ें.

और भी कई सुविधाएं!

इसके अलावा, और भी बहुत कुछ है.

  • सीएसएस zoom प्रॉपर्टी को अब नए स्टैंडर्ड के मुताबिक अलाइन कर दिया गया है.

  • AudioContext बनाने और ऑडियो रेंडर करने से जुड़ी गड़बड़ियों की शिकायत अब AudioContext.onerror के ज़रिए की जाती है.

  • DevTools के ऐनिमेशन पैनल में अब ऐनिमेशन कैप्चर किए जा सकते हैं. साथ ही, @keyframes में लाइव बदलाव किए जा सकते हैं.

रिलीज़ नोट पढ़ें.

इसके बारे में और पढ़ें

इसमें सिर्फ़ कुछ खास हाइलाइट शामिल हैं. Chrome 128 में किए गए अन्य बदलावों के बारे में जानने के लिए, यहां दिए गए लिंक देखें.

सदस्यता लें

अप-टू-डेट रहने के लिए, Chrome डेवलपर के YouTube चैनल की सदस्यता लें. ऐसा करने पर, जब भी हम कोई नया वीडियो लॉन्च करेंगे, आपको ईमेल से सूचना मिलेगी.

नमस्ते, मैं अड्रिआना जारा हूं. Chrome 128 रिलीज़ होने के बाद, मैं आपको बताऊंगी कि Chrome में नया क्या है!