Maps स्टैटिक एपीआई का इस्तेमाल करते समय अपनी स्टाइल लागू करके, स्टैंडर्ड Google मैप के प्रज़ेंटेशन को पसंद के मुताबिक बनाएं. आप सड़कों, पार्क, इमारतों, इलाकों, और अन्य लोकप्रिय जगहों जैसी सुविधाओं के विज़ुअल डिसप्ले को बदल सकते हैं. किसी कॉन्टेंट को हाइलाइट करने, पेज के कॉन्टेंट को बेहतर तरीके से दिखाने के लिए या सुविधाओं को पूरी तरह छिपाने के लिए, उनका रंग या स्टाइल बदलें.
उदाहरण
इस उदाहरण में अमेरिका के ब्रुकलिन का मैप दिखाया गया है. इसमें स्थानीय सड़कों को चमकदार हरे और रिहायशी इलाकों को काले रंग से रंगा गया है. यह लेबल की रोशनी को भी बदल देता है, ताकि वे गहरे रंग के बैकग्राउंड में बेहतर तरीके से दिखें. ध्यान दें कि यह उदाहरण, यूआरएल को कोड में बदलने के तरीके का इस्तेमाल करता है:
https://maps.googleapis.com/maps/api/staticmap?size=512x512&zoom=15¢er=Brooklyn&style=feature:road.local%7Celement:geometry%7Ccolor:0x00ff00&style=feature:landscape%7Celement:geometry.fill%7Ccolor:0x000000&style=element:labels%7Cinvert_lightness:true&style=feature:road.arterial%7Celement:labels%7Cinvert_lightness:false&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
![ब्रुकलिन का स्टाइल किया हुआ मैप.](https://developers-dot-devsite-v2-prod.appspot.com/static/maps/documentation/maps-static/images/brooklyn-map.png?authuser=7&hl=hi)
इस उदाहरण में, अमेरिका की सड़कों के एटलस के अंदाज़ का अनुमान लगाने के लिए, स्टाइल बनाने की कार्रवाइयों और निर्देशों को आसान बनाने के तरीके इस्तेमाल किए गए हैं:
https://maps.googleapis.com/maps/api/staticmap?size=512x512&zoom=12¢er=Chicago&format=png&style=feature:road.highway%7Celement:geometry%7Cvisibility:simplified%7Ccolor:0xc280e9&style=feature:transit.line%7Cvisibility:simplified%7Ccolor:0xbababa&style=feature:road.highway%7Celement:labels.text.stroke%7Cvisibility:on%7Ccolor:0xb06eba&style=feature:road.highway%7Celement:labels.text.fill%7Cvisibility:on%7Ccolor:0xffffff&key=YOUR_API_KEY&signature=DITIGAL_SIGNATURE
![यूएस रोड एटलस मैप स्टाइल.](https://developers-dot-devsite-v2-prod.appspot.com/static/maps/documentation/maps-static/images/us-road-atlas-map.png?authuser=7&hl=hi)
स्टाइल सिंटैक्स
पसंद के मुताबिक स्टाइल वाला मैप बनाने के लिए, अनुरोध के यूआरएल में एक या उससे ज़्यादा style
पैरामीटर शामिल करें.
हर style
एलान में पाइप वर्णों ("|
") से अलग किए गए नीचे दिए गए तर्क हो सकते हैं:
feature
(ज़रूरी नहीं) से पता चलता है कि इस स्टाइल में बदलाव करने के लिए, कौनसी सुविधाएं चुनी जानी चाहिए. सुविधाओं में, मैप पर मौजूद चीज़ें, जैसे कि सड़कें, पार्क या दूसरी दिलचस्प जगहें शामिल हैं. अगर कोईfeature
तर्क मौजूद नहीं है, तो बताई गई स्टाइल सभी सुविधाओं पर लागू होती है.element
(ज़रूरी नहीं) इस स्टाइल में बदलाव करने के लिए, बताई गई सुविधा के एलिमेंट के बारे में बताता है. एलिमेंट, किसी सुविधा की विशेषताएं होते हैं, जैसे कि ज्यामिति या लेबल. अगर कोईelement
तर्क मौजूद नहीं है, तो स्टाइल, बताई गई सुविधा के सभी एलिमेंट पर लागू होती है.- खास सुविधा (सुविधाओं) और एलिमेंट पर लागू करने के लिए, स्टाइल के नियमों का सेट (ज़रूरी है). एपीआई, नियमों को उसी क्रम में लागू करता है जिस क्रम में वे
style
एलान में दिखते हैं. Maps स्टैटिक एपीआई की यूआरएल की सामान्य लंबाई के दायरे में, जितने चाहें उतने नियम शामिल किए जा सकते हैं.
style=feature:myFeatureArgument|element:myElementArgument|myRule1:myRule1Argument|myRule2:myRule2Argument
सुविधाएं
यहां दिए गए style
एलान के मुताबिक, मैप की सभी सड़कों के लिए कलर लागू किए गए हैं:
style=feature:road|color:0xffffff
चुनने के लिए कुछ आम सुविधाएं यहां दी गई हैं:
feature:all
(डिफ़ॉल्ट) मैप की सभी सुविधाएं चुनता है.feature:road
, मैप पर मौजूद सभी सड़कों को चुनता है.feature:road.local
में सभी स्थानीय सड़कें चुनी गई हैं.
मैप पर दिखाई गई सुविधाओं या सुविधाओं के टाइप में भौगोलिक विशेषताएं दिखाई गई हैं. इनमें सड़कें, पार्क, पानी के स्रोत, कारोबार वगैरह शामिल हैं.
ये सुविधाएं, कैटगरी ट्री बनाती हैं और all
रूट के तौर पर होती है. अगर किसी सुविधा के बारे में जानकारी नहीं दी जाती है, तो सभी सुविधाएं चुन ली जाती हैं.
all
की किसी सुविधा को तय करने का असर एक जैसा ही होता है.
कुछ सुविधाओं में डॉट नोटेशन का इस्तेमाल करके तय की गई चाइल्ड सुविधाएं होती हैं. उदाहरण के लिए, landscape.natural
या
road.local
. अगर आपने सिर्फ़ road
जैसी पैरंट सुविधा के बारे में जानकारी दी है, तो पैरंट एलिमेंट के लिए तय की गई स्टाइल, उसके सभी बच्चों पर लागू होगी, जैसे कि road.local
और road.highway
.
ध्यान रखें कि माता-पिता के लिए उपलब्ध सुविधाओं में कुछ ऐसे एलिमेंट शामिल हो सकते हैं जो बच्चे के लिए उपलब्ध सभी सुविधाओं में शामिल नहीं होते.
ये सुविधाएं उपलब्ध हैं:
all
(डिफ़ॉल्ट) सभी सुविधाओं को चुनता है.administrative
सभी राज्य चुनता है. स्टाइल का असर सिर्फ़ एडमिन इलाकों के लेबल पर पड़ता है, भौगोलिक बॉर्डर या फ़िल पर नहीं.administrative.country
में देश चुने गए हैं.administrative.land_parcel
, पार्सल चुनता है.administrative.locality
में इलाके चुने जाते हैं.administrative.neighborhood
आस-पड़ोस को चुनता है.administrative.province
प्रांतों को चुनता है.
landscape
सभी लैंडस्केप चुनता है.landscape.man_made
में ऐसी सुविधाएं चुनी जाती हैं जिन्हें इंसान ने बनाया है, जैसे कि इमारत और दूसरे स्ट्रक्चर.landscape.natural
प्राकृतिक विशेषताएं चुनता है, जैसे कि पहाड़, नदियां, रेगिस्तान, और ग्लेशियर.landscape.natural.landcover
ज़मीन से ढकी जगहों, यानी ज़मीन को ढकने वाला मटीरियल चुनता है, जैसे कि जंगल, घास के मैदान, वेटलैंड (दलदली या नमी वाली जगह), और खाली ज़मीन.landscape.natural.terrain
, ज़मीन की सतह के इलाकों को चुनता है, जैसे कि ऊंचाई, ढलान, और दिशा.
poi
सभी पसंदीदा जगहें चुनता है.poi.attraction
में पर्यटकों की पसंदीदा जगहें चुनी गई हैं.poi.business
कारोबार चुनता है.poi.government
में सरकारी इमारतें चुनी गई हैं.poi.medical
आपातकालीन सेवाओं को चुनता है, जिनमें अस्पताल, दवा की दुकानें, पुलिस, डॉक्टर वगैरह शामिल हैं.poi.park
ने पार्क चुने हैं.poi.place_of_worship
प्रार्थना करने की जगहें चुनता है, जिनमें चर्च, मंदिर, मस्जिद वगैरह शामिल हैं.poi.school
स्कूल चुनता है.poi.sports_complex
स्पोर्ट्स कॉम्प्लेक्स चुनता है.
road
सभी सड़कें चुनता है.road.arterial
मुख्य सड़कें चुनता है.road.highway
हाइवे चुनता है.road.highway.controlled_access
ऐसे हाइवे चुनता है जिनके पास सीमित ऐक्सेस होता है.road.local
स्थानीय सड़कें चुनता है.
transit
सभी बस, मेट्रो वगैरह के स्टेशन और लाइन चुनता है.transit.line
, बस, मेट्रो वगैरह का रूट चुनता है.transit.station
सभी बस, मेट्रो वगैरह के स्टेशन चुनता है.transit.station.airport
हवाई अड्डे चुनता है.transit.station.bus
बस स्टॉप चुनता है.transit.station.rail
में रेलवे स्टेशन चुनती है.
water
पानी के स्रोत चुनता है.
एलिमेंट
यहां दिए गए style
एलान में, सभी स्थानीय सड़कों के लेबल के लिए कलर किया गया है:
style=feature:road.local|element:labels|color:0xffffff
एलिमेंट, किसी सुविधा के सबडिविज़न होते हैं. उदाहरण के लिए, किसी सड़क में मैप पर ग्राफ़िक लाइन (ज्यामिति) और उसके नाम (लेबल) के बारे में बताने वाला टेक्स्ट भी होता है.
ये एलिमेंट उपलब्ध हैं, लेकिन ध्यान रखें कि कोई खास सुविधा, शायद किसी भी, कुछ या सभी एलिमेंट के साथ काम न करे:
all
(डिफ़ॉल्ट) बताई गई सुविधा के सभी एलिमेंट चुनता है.geometry
, बताई गई सुविधा के सभी ज्यामितीय एलिमेंट चुनता है.geometry.fill
सिर्फ़ सुविधा की ज्यामिति को भरने का विकल्प चुनता है.geometry.stroke
सिर्फ़ सुविधा की ज्यामिति का स्ट्रोक चुनता है.
labels
, किसी सुविधा से जुड़े टेक्स्ट लेबल चुनता है.labels.icon
सिर्फ़ सुविधा के लेबल में दिखने वाले आइकॉन को चुनता है.labels.text
सिर्फ़ लेबल के टेक्स्ट को चुनता है.labels.text.fill
सिर्फ़ लेबल का फ़िल चुनता है. आम तौर पर, लेबल के टेक्स्ट को रंगीन आउटलाइन के तौर पर रेंडर किया जाता है, जो लेबल टेक्स्ट के आस-पास होती है.labels.text.stroke
, सिर्फ़ लेबल के टेक्स्ट का स्ट्रोक चुनता है.
स्टाइल के नियम
स्टाइल के नियम, फ़ॉर्मैटिंग के विकल्प होते हैं. इन्हें हर style
एलान में बताई गई सुविधाओं और एलिमेंट पर लागू किया जाता है.
style
का यह एलान, मैप पर सड़कों के लिए दो स्टाइल रूल लागू करता है. पहला नियम सड़कों को रंग देता है. दूसरा नियम, सड़कों को दिखाने की प्रक्रिया को आसान बनाता है. इसलिए, इन पर लाइनों की आउटलाइन के बिना पतली लाइनें
होती हैं:
style=feature:road|color:0xffffff|visibility:simplified
हर style
एलान में, पाइप ("|
") वर्ण का इस्तेमाल करके अलग की गई एक या उससे ज़्यादा कार्रवाइयां होनी चाहिए. हर कार्रवाई कोलन (":
") वर्ण का इस्तेमाल करके, आर्ग्युमेंट की वैल्यू तय की जाती है. सभी कार्रवाइयां, चुने गए क्रम में लागू होती हैं.
नीचे दिए गए स्टाइल के विकल्प काम करते हैं:
hue
(#RRGGBB
फ़ॉर्मैट की आरजीबी हेक्स स्ट्रिंग) बेसिक कलर को दिखाता है.ध्यान दें: यह विकल्प, Google के डिफ़ॉल्ट स्टाइल (या मैप पर तय किए गए अन्य स्टाइल विकल्पों में) में रंग को गहरा या फीका बनाए रखता है. यह रंग, बेस मैप की स्टाइल के हिसाब से होता है. अगर Google, बुनियादी मैप की स्टाइल में कोई बदलाव करता है, तो इन बदलावों का असर आपके मैप की उन सुविधाओं पर पड़ता है जो
hue
वाली स्टाइल में होती हैं. अगर हो सके, तो असल मेंcolor
स्टाइलर का इस्तेमाल करना बेहतर होगा.lightness
(-100
और100
के बीच का फ़्लोटिंग पॉइंट वैल्यू), एलिमेंट की चमक में हुए बदलाव के प्रतिशत को दिखाता है. नेगेटिव वैल्यू, अंधेरे को बढ़ाती हैं (जहां -100 का मतलब है काले रंग का). जबकि पॉज़िटिव मान, चमक को बढ़ाते हैं (जहां +100 का मतलब है सफ़ेद रंग का).ध्यान दें: यह विकल्प, Google के डिफ़ॉल्ट स्टाइल (या मैप पर तय किए गए अन्य स्टाइल विकल्पों में) को गहरा या फीका करते हुए लाइट की चमक को सेट करता है. यह रंग, बेस मैप की स्टाइल के हिसाब से होता है. अगर Google, बुनियादी मैप की स्टाइल में कोई बदलाव करता है, तो इन बदलावों का असर आपके मैप की उन सुविधाओं पर पड़ता है जो
lightness
वाली स्टाइल में होती हैं. अगर हो सके, तो बेहतरcolor
स्टाइलर का इस्तेमाल करें.saturation
(-100
और100
के बीच का फ़्लोटिंग पॉइंट वैल्यू) से पता चलता है कि एलिमेंट पर लागू होने वाले बेसिक कलर के इंटेंसिटी में कितने प्रतिशत बदलाव हुआ है.ध्यान दें: यह विकल्प, Google के डिफ़ॉल्ट स्टाइल (या मैप पर आपकी ओर से बताए गए अन्य स्टाइल विकल्पों में) में रंग और रोशनी को बनाए रखते हुए, रंग को गहरा या फीका करके, रंग को गहरा या फीका करता है. यह रंग, बेस मैप की स्टाइल के हिसाब से होता है. अगर Google, बुनियादी मैप की स्टाइल में कोई बदलाव करता है, तो इन बदलावों का असर आपके मैप की उन सुविधाओं पर पड़ता है जो
saturation
वाली स्टाइल में होती हैं. अगर हो सके, तो बिलकुलcolor
स्टाइलर का इस्तेमाल करना बेहतर है.gamma
(0.01
से10.0
के बीच का फ़्लोटिंग पॉइंट वैल्यू, जहां1.0
में कोई सुधार नहीं किया जाता). इससे पता चलता है कि एलिमेंट पर गामा में कितनी सुधार किया जाना है. गामा करेक्शन बिना लीनियर तरीके से रंगों की रोशनी में बदलाव करते हैं. हालांकि, सफ़ेद या काले रंग की वैल्यू पर इनका कोई असर नहीं पड़ता. गामा करेक्शन का इस्तेमाल आम तौर पर, कई एलिमेंट के कंट्रास्ट में बदलाव करने के लिए किया जाता है. उदाहरण के लिए, एलिमेंट के किनारों और अंदरूनी हिस्सों के बीच का कंट्रास्ट बढ़ाने या घटाने के लिए, गामा में बदलाव किया जा सकता है.ध्यान दें: यह विकल्प गामा कर्व का इस्तेमाल करके, डिफ़ॉल्ट Google स्टाइल के हिसाब से हल्केपन को अडजस्ट करता है. अगर Google, बुनियादी मैप की स्टाइल में कोई बदलाव करता है, तो इन बदलावों का असर आपके मैप की उन सुविधाओं पर पड़ता है जो
gamma
वाली स्टाइल में होती हैं. अगर हो सके, तो बिलकुलcolor
स्टाइलर का इस्तेमाल करना बेहतर है.invert_lightness
(अगरtrue
है) मौजूदा रोशनी को उलट देता है. उदाहरण के लिए, यह सफ़ेद टेक्स्ट वाले गहरे मैप पर तेज़ी से स्विच करने के लिए फ़ायदेमंद है.ध्यान दें: यह विकल्प सिर्फ़ डिफ़ॉल्ट Google शैली को बदल देता है. अगर Google, बुनियादी मैप की स्टाइल में कोई बदलाव करता है, तो इन बदलावों का असर आपके मैप की उन सुविधाओं पर पड़ता है जो
invert_lightness
वाली स्टाइल में होती हैं. अगर हो सके, तो बिलकुलcolor
स्टाइलर का इस्तेमाल करना बेहतर है.visibility
(on
,off
याsimplified
) से पता चलता है कि एलिमेंट, मैप पर दिखता है या नहीं अगर हां, तो कैसा दिखेगा.simplified
को दिखाने पर, प्रभावित जगहों से कुछ स्टाइल सुविधाएं हट जाती हैं. उदाहरण के लिए, सड़कों को बिना आउटलाइन वाली लाइनों में सरल बना दिया जाता है, जबकि पार्कों का लेबल टेक्स्ट हट जाता है, लेकिन लेबल आइकॉन बना रहता है.color
(#RRGGBB
फ़ॉर्मैट की आरजीबी हेक्स स्ट्रिंग) सुविधा का रंग सेट करता है.weight
(शून्य से ज़्यादा या उसके बराबर, पूर्णांक की वैल्यू) सुविधा के वज़न को पिक्सल में सेट करता है. मोटाई की वैल्यू को ज़्यादा पर सेट करने से, टाइल के बॉर्डर के पास क्लिप बनाई जा सकती हैं.
स्टाइल के नियम, आपके बताए गए क्रम में लागू किए जाते हैं. एक ही स्टाइल ऑपरेशन में, कई ऑपरेशन को न जोड़ें. इसके बजाय, स्टाइल कलेक्शन में हर ऑपरेशन को अलग-अलग एंट्री के तौर पर तय करें.
ध्यान दें: ऑर्डर ज़रूरी है, क्योंकि कुछ कार्रवाइयां क्रम में नहीं होती हैं. जिन सुविधाओं और/या एलिमेंट में स्टाइल ऑपरेशन (आम तौर पर) की मदद से बदलाव किया जाता है उनमें पहले से ही स्टाइल मौजूद हैं. अगर मौजूद हैं, तो कार्रवाइयां उन मौजूदा स्टाइल पर काम करती हैं.
द ह्यू, सैचुरेशन, लाइटनेस मॉडल
स्टाइल वाले मैप, स्टाइलर ऑपरेशन में रंग दिखाने के लिए ह्यू, सैचुरेशन, लाइटनेस (एचएसएल) मॉडल का इस्तेमाल करते हैं. ह्यू मूल रंग को दिखाता है, सेचुरेशन उस रंग की तीव्रता बताता है, और लाइटनेस, मूल रंग में सफ़ेद या काले रंग की मिलती-जुलती मात्रा दिखाता है.
गामा करेक्शन की मदद से, कलर स्पेस पर हल्केपन को कम या ज़्यादा किया जा सकता है. आम तौर पर, ऐसा कंट्रास्ट को बढ़ाने या कम करने के लिए किया जाता है. इसके अलावा, एचएसएल मॉडल, निर्देशांक स्पेस में रंग के बारे में बताता है, जहां hue
कलर व्हील में ओरिएंटेशन के बारे में बताता है. वहीं, सैचुरेशन और लाइटनेस, अलग-अलग ऐक्सिस पर डाइमेंशन के बारे में बताता है. रंगों को आरजीबी कलर स्पेस में मापा जाता है, जो ज़्यादातर आरजीबी कलर स्पेस के बराबर होता है. हालांकि, इसमें सफ़ेद और काला रंग मौजूद नहीं होता.
हालांकि, hue
इस वैल्यू का इस्तेमाल करके सिर्फ़ बेसिक कलर के बारे में पता लगाता है - इसका मतलब है कि कलर व्हील के आस-पास इसका ओरिएंटेशन, सेचुरेशन या लाइटनेस के बारे में नहीं, बल्कि प्रतिशत में बदलाव के तौर पर अलग से दिखाया जाता है.
उदाहरण के लिए, शुद्ध हरे रंग का रंग hue:0x00ff00
या hue:0x000100
के तौर पर तय किया जा सकता है. दोनों कलर एक जैसे हैं. एचएसएल कलर मॉडल में दोनों वैल्यू शुद्ध हरे रंग की ओर इशारा करती हैं.
आरजीबी कलर व्हील
लाल, हरे, और नीले रंग के बराबर हिस्सों वाली आरजीबी hue
वैल्यू कोई भी रंग नहीं दिखाती है. ऐसा इसलिए होता है, क्योंकि इनमें से कोई भी वैल्यू एचएसएल कोऑर्डिनेट स्पेस में ओरिएंटेशन को नहीं दिखाती है. उदाहरण के लिए, "#000000" (काला), "#FFFFFF" (सफ़ेद),
और सभी स्लेटी रंग. काले, सफ़ेद या स्लेटी रंग का इस्तेमाल करने के लिए, आपको सभी saturation
हटाने होंगे (वैल्यू को -100
पर सेट करें) और इसके बजाय, lightness
में बदलाव करें.
इसके अलावा, पहले से ही कलर स्कीम वाली मौजूदा सुविधाओं में बदलाव करते समय, hue
जैसी वैल्यू में बदलाव करने से मौजूदा saturation
या lightness
में कोई बदलाव नहीं होता.