v2 एपीआई अपडेट में, Google Fonts अब वैरिएबल फ़ॉन्ट का इस्तेमाल पूरी तरह से कर सकते हैं. हम आपको एक और एक से ज़्यादा फ़ॉन्ट फ़ैमिली को कॉल करने और ऐक्सिस रेंज बताने का तरीका बताएंगे. वैरिएबल नेटवर्क के बारे में ज़्यादा जानकारी के लिए, TypeNetwork में The डेविड बर्लो के इंटरैक्टिव तरीके से दिखाए गए ब्रोशर से ज़्यादा जानें.
नया क्या है
यह सब एक नए बेस यूआरएल से शुरू होता है:
https://fonts.googleapis.com/css2
हर फ़ैमिली में स्टाइल के बारे में बताने वाला सिंटैक्स बदल गया है. इससे वैरिएबल के फ़ॉन्ट के लिए बने स्पेस के बारे में जानकारी मिलती है.
क्विकस्टार्ट गाइड
इस HTML को फ़ाइल में कॉपी करें और चिपकाएं:
<html> <head> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Crimson+Pro"> <style> body { font-family: 'Crimson Pro', serif; font-size: 48px; } </style> </head> <body> <div>Making the Web Beautiful!</div> </body> </html>
फ़ाइल खोलने के लिए ब्राउज़र का इस्तेमाल करके, पेज को क्रिमसन प्रो फ़ॉन्ट में, “वेब को सुंदर बनाना" टेक्स्ट दिखाना चाहिए.
एक से ज़्यादा परिवार
एक से ज़्यादा परिवारों का अनुरोध करने के लिए, हर परिवार के लिए family=
पैरामीटर तय करें.
उदाहरण के लिए, फ़ॉन्ट का अनुरोध करने के लिए क्रिमसन प्रो और लाइट्राटा:
https://fonts.googleapis.com/css2?family=Crimson+Pro&family=Literata
इस HTML को फ़ाइल में कॉपी करें और चिपकाएं:
<html> <head> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Crimson+Pro&family=Literata"> <style> body { font-size: 48px; } div:nth-child(1) { font-family: 'Crimson Pro', serif; } div:nth-child(2) { font-family: 'Literata’, serif; } </style> </head> <body> <div>Making the Web Beautiful!</div> <div>Making the Web Beautiful!</div> </body> </html>
फ़ाइल खोलने के लिए, ब्राउज़र का उपयोग करते हुए, पेज को पहले, "वेब के लिए सुंदर बनाना" टेक्स्ट दिखाई देना चाहिए, पहले Cramson Pro में और फिर Litera में.
ऐक्सिस रेंज
वैरिएबल फ़ॉन्ट का इस्तेमाल करने पर, लगातार कई स्टाइल विकल्प मिलते हैं. हालांकि, इनमें लगातार बदलाव होते रहते हैं. यह रिस्पॉन्सिव डिज़ाइन के मुताबिक होता है. यह टाइपोग्राफ़ी, पेज पर मौजूद स्टाइल का लगातार इस्तेमाल करती है. पेज पर 100 से लेकर 900 वर्ण तक की वैल्यू शामिल होती है और कुछ स्थितियों के हिसाब से यह वेट अलग-अलग होती है.
किसी फ़ॉन्ट फ़ॉन्ट रेंज की रेंज का अनुरोध करने के लिए, दो वैल्यू के साथ ..
का इस्तेमाल करें
फ़ॉन्ट | अनुरोध |
---|---|
क्रिमसन प्रो [wght 200-900 ] |
https://fonts.googleapis.com/css2?family=Crimson+Pro:wght@200..900 |
क्रिमसन प्रो इटैलिक [wght 200-900 ] |
https://fonts.googleapis.com/css2?family=Crimson+Pro:ital,wght@1,200..900 |
क्रिमसन प्रो बोल्ड इटैलिक और [wght 200-900 ] |
https://fonts.googleapis.com/css2?family=Crimson+Pro:ital,wght@0,200..900;1,700 |
अलग-अलग स्टाइल, जैसे कि वज़न
स्टाइल की खास बातों के बिना, एपीआई अनुरोध किए गए परिवार की डिफ़ॉल्ट स्टाइल उपलब्ध कराता है. खास वज़न जैसी दूसरी अलग-अलग शैलियों का अनुरोध करने के लिए, फ़ॉन्ट फ़ैमिली के नाम के बाद, कोलन (:) लगाएं. इसके बाद, वर्णमाला के क्रम में ऐक्सिस प्रॉपर्टी कीवर्ड की सूची डालें, @ चिह्न, और ऐक्सिस प्रॉपर्टी के लिए वैल्यू की एक या उससे ज़्यादा सूचियां जोड़ें.
ये उदाहरण इसे काम करते हुए दिखाते हैं.
फ़ॉन्ट | अनुरोध |
---|---|
क्रिमसन प्रो (डिफ़ॉल्ट) | https://fonts.googleapis.com/css2?family=Crimson+Pro |
क्रिमसन प्रो बोल्ड | https://fonts.googleapis.com/css2?family=Crimson+Pro:wght@700 |
क्रिमसन प्रो रेगुलर और बोल्ड | https://fonts.googleapis.com/css2?family=Crimson+Pro:wght@400;700 |
क्रिमसन प्रो बोल्ड और बोल्ड इटैलिक | https://fonts.googleapis.com/css2?family=Crimson+Pro:ital,wght@0,700;1,700 |
Google फ़ॉन्ट में हर फ़ॉन्ट फ़ैमिली के लिए उपलब्ध सभी शैलियां हैं.
डिफ़ॉल्ट स्टाइल
जब कोई अनुरोध किसी अक्ष के लिए कोई स्थिति या श्रेणी तय नहीं करता है, तो डिफ़ॉल्ट स्थिति का इस्तेमाल किया जाएगा. इटैलिक ऐक्सिस की डिफ़ॉल्ट स्थिति 0 (सामान्य) और वज़न ऐक्सिस के लिए डिफ़ॉल्ट जगह 400 (सामान्य) होती है.
जिन परिवारों में अक्षों के लिए डिफ़ॉल्ट जगह नहीं है, उनके लिए अनुरोध नहीं किए जा सकते. उदाहरण के लिए, 500 से 900 तक की वज़न की धुरी वाले परिवार का अनुरोध करते समय, वज़न की स्थिति बताई जानी चाहिए.
गैर-मानक वज़न
स्टैटिक फ़ॉन्ट के साथ, वज़न की शैलियों को आम तौर पर 100 के गुणांकों में बताया जाता है (उदा. 300, 400, 700). वैरिएबल फ़ॉन्ट, स्टैंडर्ड वेट और इंटरमीडिएट वेट, दोनों की सुविधा देते हैं. कोई इंटरमीडिएट वज़न रेंडर करने के लिए:
https://fonts.googleapis.com/css2?family=Crimson+Pro:wght@450
इंतज़ार के समय और फ़ाइल के साइज़ के हिसाब से ऑप्टिमाइज़ करना
इस्तेमाल की जा रही स्टाइल के बारे में सटीक जानकारी दें. एपीआई, फ़ॉन्ट के सबसे छोटे सेट में सुझाई गई स्टाइल डिलीवर करता है. इस्तेमाल नहीं की गई स्टाइल का अनुरोध करने पर, हो सकता है कि आपके उपयोगकर्ताओं को ज़रूरत से ज़्यादा फ़ॉन्ट डेटा डाउनलोड करना पड़े. इसकी वजह से, इंतज़ार का समय ज़्यादा हो सकता है. अगर सिर्फ़ तीन खास ट्रैफ़िक का इस्तेमाल किया जाता है, तो उन्हें अपने अनुरोध में अलग-अलग स्टाइल के तौर पर दिखाएं. अगर आप लगातार वज़न की सीमा का इस्तेमाल करते हैं, तो अपने अनुरोध में वज़न की वह सीमा बताएं.
फ़ॉन्ट-डिसप्ले का इस्तेमाल
फ़ॉन्ट-डिसप्ले
प्रॉपर्टी से आप यह कंट्रोल कर सकते हैं कि फ़ॉन्ट अब भी लोड होते समय या
उपलब्ध नहीं होने पर क्या होगा. डिफ़ॉल्ट auto
के अलावा कोई दूसरी वैल्यू तय करना आम तौर पर सही होता है.
display
पैरामीटर में मनचाहे मान को पास करें:
https://fonts.googleapis.com/css2?family=Crimson+Pro&display=swap
आपके फ़ॉन्ट अनुरोधों को ऑप्टिमाइज़ करना
अक्सर, जब आप अपनी साइट या ऐप्लिकेशन पर वेब फ़ॉन्ट का इस्तेमाल करना चाहते हैं, तब आपको पहले से पता होता है कि आपको कौनसे अक्षरों की ज़रूरत है. ऐसा अक्सर तब होता है, जब लोगो या शीर्षक में वेब फ़ॉन्ट का इस्तेमाल किया जाता है.
इन मामलों में, आपको अपने फ़ॉन्ट अनुरोध यूआरएल में text=
वैल्यू तय करने के बारे में सोचना चाहिए. ऐसा करने पर, Google फ़ॉन्ट आपके फ़ॉन्ट के लिए ऑप्टिमाइज़ की गई फ़ाइल दिखाता है. कुछ मामलों में, फ़ॉन्ट फ़ाइल का साइज़ 90% तक कम हो जाता है.
इस सुविधा का इस्तेमाल करने के लिए, बस अपने एपीआई अनुरोध में text=
जोड़ें. उदाहरण के लिए, अगर आप ब्लॉग के शीर्षक के लिए सिर्फ़ Inconsolata का इस्तेमाल कर रहे हैं, तो आप शीर्षक को text=
की वैल्यू के तौर पर रखें. अनुरोध कुछ इस तरह दिखेगा:
https://fonts.googleapis.com/css2?family=Comfortaa&text=Hello
सभी क्वेरी स्ट्रिंग की तरह ही, आपको यूआरएल को कोड में बदलना होगा:
https://fonts.googleapis.com/css2?family=Comfortaa&text=Hello%20World
यह सुविधा, अंतरराष्ट्रीय फ़ॉन्ट पर भी काम करती है. इससे, UTF-8 वर्णों के बारे में बताया जा सकता है. उदाहरण के लिए, ¡Hola! को इस तरह दिखाया जाता है:
https://fonts.googleapis.com/css2?family=Comfortaa&text=%c2%a1Hola!
कृपया ध्यान दें कि 'text=' पैरामीटर सिर्फ़ एक बार बताया जा सकता है. यह अनुरोध करने वाले सभी परिवारों पर लागू होता है. अगर आपको एक से ज़्यादा फ़ैमिली के लिए अलग-अलग टेक्स्ट ऑप्टिमाइज़ेशन की ज़रूरत है, तो कृपया अलग-अलग एपीआई अनुरोधों का इस्तेमाल करें.
एपीआई यूआरएल बनाना
सख्ती
ध्यान रखें कि अपडेट किया गया सीएसएस एपीआई, मूल सीएसएस एपीआई के मुकाबले स्वीकार किए गए अनुरोधों को लेकर ज़्यादा सख्त होता है.
सामान्य दिशा-निर्देश:
- अक्षों को अंग्रेज़ी वर्णमाला के क्रम में रखें (
en-US
स्थान-भाषा) - ऐक्सिस वैल्यू ग्रुप (जैसे कि ट्यूल) को अंकों में क्रम से लगाना ज़रूरी है
- बैंगनी ओवरलैप या छू नहीं सकते (जैसे
wght
400..500 और 500..600)
एपीआई के यूआरएल की खास बातें
/css2?family=<spec>[&family=<spec>...][&text=<text>][&display=<display>]
spec
: <family_name>[:<axis_tag_list>@<axis_tuple_list>]
family_name
: फ़ॉन्ट फ़ैमिली का नाम
axis_tag_list
: <axis>[,<axis>...] // Sorted alphabetically (en-US locale)
axis
: किसी ऐक्सिस टैग, जैसे कि ital
, wdth
, wght
axis_tuple_list
: <axis_tuple>[;<axis_tuple>...]
axis_tuple
: <value>[,<value>...] // Same length as axis_tag_list
value
: <range>
| <float>
range
: <float>..<float>
float
: ऐक्सिस की रेंज में वैल्यू
text
: वह टेक्स्ट जिसे अनुरोध किए गए टाइपफ़ेस में दिखाया जाएगा
display
: auto
| block
| swap
| fallback
| optional
लेगसी ब्राउज़र के लिए सपोर्ट
जिन ब्राउज़र में फ़ॉन्ट का फ़ॉन्ट बदलने की सुविधा नहीं है, हो सकता है कि वे आपकी ज़रूरत के हिसाब से डिज़ाइन न दिखा पाएं. कैनियस पर ब्राउज़र के वैरिएबल फ़ॉन्ट की जांच करें.
प्रोग्रेसिव एन्हैंसमेंट अपनाकर, उन पुराने ब्राउज़र में होने वाले अनचाहे व्यवहार से बचा जा सकता है. वैरिएबल फ़ॉन्ट सुविधाओं को गेट करने के लिए, अपने सीएसएस में @supports
क्वेरी का इस्तेमाल करें.
इस उदाहरण में, हम मार्काज़ी टेक्स्ट के 450 वज़न का इस्तेमाल करना चाहते हैं, लेकिन जब वैरिएबल फ़ॉन्ट सुविधाएं काम नहीं करतीं, तो उन्हें सामान्य (वज़न 400) या माध्यम (वज़न 500) पर वापस आना होगा.
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Markazi+Text:wght@450" />
<style>
* {
font-family: 'Markazi Text';
font-weight: 400;
}
@supports (font-variation-settings: "wght" 450) {
* {
font-family: 'Markazi Text';
font-weight: 450;
}
}
</style>
सीएसएस अनुरोध Markazi+Text:wght@450
, ऐसे क्लाइंट को वैरिएबल 450 भेजता है जो वैरिएबल फ़ॉन्ट के साथ काम नहीं करते और 400 और 500 वज़न उन क्लाइंट को भेजते हैं जो ऐसा नहीं करते. आम तौर पर, आपके अनुरोध की रेंज के हिसाब से फ़ॉलबैक, पुराने ब्राउज़र में उपलब्ध होंगे.
ऐक्सिस | फ़ॉलबैक |
---|---|
ital |
0, 1 से |
wght |
100, 200, 300, 400, 500, 600, 700, 800, 900 को शामिल करें |
इन उदाहरणों में बताया गया है कि कुछ अलग-अलग अनुरोधों के लिए लेगसी ब्राउज़र पर कौनसी स्टाइल उपलब्ध होंगी.
अनुरोध | लेगसी ब्राउज़र पर स्टाइल उपलब्ध हैं |
---|---|
ital@0 |
ital@0 |
wght@500 |
wght@500 |
wght@432 |
wght@400;500 |
wght@440..560 |
wght@400;500;600 |
उपलब्ध वैरिएबल फ़ॉन्ट
v2 एपीआई में उपलब्ध वैरिएबल फ़ॉन्ट की टेबल यहां मिल सकती है.
इसके बारे में और पढ़ें
- Google Fonts एपीआई की मदद से, Google फ़ॉन्ट पर उपलब्ध फ़ॉन्ट फ़ैमिली की पूरी सूची देखें.
- Google Fonts एपीआई के काम करने के तरीके के बारे में ज़्यादा जानने के लिए, तकनीकी विचार पेज देखें.