میتوانید از گزینههای سبک برای سفارشی کردن ارائه Google Maps استاندارد استفاده کنید. میتوانید ظاهر ویژگیهایی مانند جادهها، پارکها، مشاغل و سایر نقاط مورد علاقه را تغییر دهید. علاوه بر تغییر ظاهر این ویژگی های نقشه، می توانید ویژگی های نقشه را نیز به طور کامل مخفی کنید. این به شما امکان میدهد کارهایی مانند تأکید بر اجزای خاص نقشه، یا اینکه نقشه مکمل سبک صفحه اطراف باشد، انجام دهید.
نمونه ها
اعلان سبک JSON زیر همه ویژگیهای نقشه را به خاکستری تبدیل میکند، سپس هندسه جاده شریانی را به رنگ آبی رنگ میکند و برچسبهای منظره را کاملاً پنهان میکند:
[ { "featureType": "all", "stylers": [ { "color": "#C0C0C0" } ] },{ "featureType": "road.arterial", "elementType": "geometry", "stylers": [ { "color": "#CCFFFF" } ] },{ "featureType": "landscape", "elementType": "labels", "stylers": [ { "visibility": "off" } ] } ]
شی JSON
یک اعلان سبک JSON از عناصر زیر تشکیل شده است:
- featureType (اختیاری) - ویژگی هایی که برای این تغییر سبک انتخاب می شوند. ویژگیها ویژگیهای جغرافیایی روی نقشه هستند، از جمله جادهها، پارکها، تودههای آبی و غیره. اگر یک ویژگی را مشخص نکنید، همه ویژگیها انتخاب میشوند.
- elementType (اختیاری) - ویژگی ویژگی مشخص شده برای انتخاب. عناصر، بخشهای فرعی یک ویژگی هستند، از جمله برچسبها و هندسه. اگر عنصری را مشخص نکنید، همه عناصر ویژگی انتخاب می شوند.
- استایلرها - قوانینی که در مورد ویژگی ها و عناصر انتخاب شده اعمال می شود. استایلرها رنگ، دید و وزن ویژگی را نشان می دهند. می توانید یک یا چند استایلر را برای یک ویژگی اعمال کنید.
برای تعیین یک سبک، باید مجموعه ای از انتخابگرهای featureType
و elementType
و stylers
خود را در یک آرایه سبک ترکیب کنید. شما می توانید هر ترکیبی از ویژگی ها را در یک آرایه هدف قرار دهید. با این حال، تعداد سبک هایی که می توانید به طور همزمان اعمال کنید محدود است. اگر آرایه سبک شما از حداکثر تعداد کاراکترها بیشتر باشد، هیچ سبکی اعمال نمی شود.
بقیه این صفحه اطلاعات بیشتری در مورد ویژگی ها، عناصر و استایلرها دارد.
featureType
قطعه JSON زیر همه جادههای روی نقشه را انتخاب میکند:
{ "featureType": "road" }
ویژگیها یا انواع ویژگیها، ویژگیهای جغرافیایی روی نقشه هستند، از جمله جادهها، پارکها، آبها، مشاغل و موارد دیگر.
ویژگیها درخت دستهبندی را تشکیل میدهند که 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
توده های آبی را انتخاب می کند.
elementType
قطعه JSON زیر برچسبها را برای همه جادههای محلی انتخاب میکند:
{ "featureType": "road.local", "elementType": "labels" }
عناصر زیرمجموعه های یک ویژگی هستند. به عنوان مثال، یک جاده از خط گرافیکی (هندسه) روی نقشه و همچنین متنی که نام آن را نشان می دهد (یک برچسب) تشکیل شده است.
عناصر زیر در دسترس هستند، اما توجه داشته باشید که یک ویژگی خاص ممکن است از هیچ یک، برخی یا همه عناصر پشتیبانی نکند:
-
all
(پیش فرض) تمام عناصر ویژگی مشخص شده را انتخاب می کند. -
geometry
تمام عناصر هندسی ویژگی مشخص شده را انتخاب می کند.-
geometry.fill
فقط پر کردن هندسه ویژگی را انتخاب می کند. -
geometry.stroke
فقط خط هندسه ویژگی را انتخاب می کند.
-
-
labels
برچسب های متنی مرتبط با ویژگی مشخص شده را انتخاب می کند.-
labels.icon
فقط نماد نمایش داده شده در برچسب ویژگی را انتخاب می کند. -
labels.text
فقط متن برچسب را انتخاب می کند. -
labels.text.fill
فقط پر کردن برچسب را انتخاب می کند. پر کردن یک برچسب معمولاً به صورت یک طرح کلی رنگی ارائه می شود که متن برچسب را احاطه کرده است. -
labels.text.stroke
فقط خط متن برچسب را انتخاب می کند.
-
stylers
استایلرها گزینه های قالب بندی هستند که می توانید برای ویژگی ها و عناصر نقشه اعمال کنید.
قطعه JSON زیر یک ویژگی را با استفاده از مقدار RGB به رنگ سبز روشن نشان می دهد:
"stylers": [ { "color": "#99FF33" } ]
این قطعه تمام شدت رنگ یک ویژگی را بدون توجه به رنگ شروع آن حذف می کند. اثر این است که ویژگی مقیاس خاکستری را ارائه می دهد:
"stylers": [ { "saturation": -100 } ]
این قطعه یک ویژگی را به طور کامل پنهان می کند:
"stylers": [ { "visibility": "off" } ]
گزینه های سبک زیر پشتیبانی می شوند:
-
hue
(رشته شش گوش RGB با فرمت#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 هر گونه تغییری در سبک نقشه پایه ایجاد کند، این تغییرات بر ویژگیهای نقشه شما که با
gamma
استایل شده است، تأثیر میگذارد. در صورت امکان بهتر است از استایلرcolor
مطلق استفاده کنید. -
invert_lightness
(اگرtrue
) سبکی موجود را معکوس می کند. این برای مثال برای جابجایی سریع به نقشه تیرهتر با متن سفید مفید است.توجه: این گزینه به سادگی استایل پیش فرض گوگل را معکوس می کند. اگر Google هر گونه تغییری در سبک نقشه پایه ایجاد کند، این تغییرات بر ویژگیهای نقشه شما که با
invert_lightness
استایل شده است، تأثیر میگذارد. در صورت امکان بهتر است از استایلرcolor
مطلق استفاده کنید. -
visibility
(on
،off
یاsimplified
) نشان می دهد که آیا و چگونه عنصر روی نقشه ظاهر می شود. یک دیدsimplified
برخی از ویژگی های سبک را از ویژگی های تحت تأثیر حذف می کند. برای مثال، جادهها به خطوط باریکتر بدون خطوط اصلی سادهسازی میشوند، در حالی که پارکها متن برچسب خود را از دست میدهند اما نماد برچسب را حفظ میکنند. -
color
(رشته شش گوش RGB با فرمت#RRGGBB
) رنگ ویژگی را تنظیم می کند. -
weight
(یک مقدار صحیح، بزرگتر یا مساوی صفر) وزن ویژگی را بر حسب پیکسل تعیین می کند. تنظیم وزن روی مقدار زیاد ممکن است منجر به بریدن نزدیک مرزهای کاشی شود.
قوانین سبک به ترتیبی که شما مشخص کرده اید اعمال می شود. چندین عملیات را در یک عملیات سبک ترکیب نکنید. در عوض، هر عملیات را به عنوان یک ورودی جداگانه در آرایه سبک تعریف کنید.
توجه: ترتیب مهم است، زیرا برخی از عملیات جابجایی نیستند. ویژگیها و/یا عناصری که از طریق عملیات سبک اصلاح میشوند (معمولاً) از قبل دارای سبکهای موجود هستند. در صورت وجود، عملیات بر روی آن سبک های موجود عمل می کند.
مدل رنگ، اشباع، سبکی
نقشه های سبک از مدل رنگ، اشباع، سبکی (HSL) برای نشان دادن رنگ در عملیات استایلر استفاده می کنند. رنگ نشان دهنده رنگ اصلی، اشباع نشان دهنده شدت آن رنگ، و روشنی نشان دهنده مقدار نسبی سفید یا سیاه در رنگ تشکیل دهنده است.
تصحیح گاما روشنایی فضای رنگ را تغییر می دهد، به طور کلی برای افزایش یا کاهش کنتراست. علاوه بر این، مدل HSL رنگ را در یک فضای مختصات تعریف می کند که در آن hue
جهت گیری در یک چرخ رنگ را نشان می دهد، در حالی که اشباع و روشنایی دامنه ها را در امتداد محورهای مختلف نشان می دهد. رنگ ها در یک فضای رنگی RGB اندازه گیری می شوند که مشابه بیشتر فضاهای رنگی RGB است، با این تفاوت که سایه های سفید و سیاه وجود ندارند.
در حالی که hue
یک مقدار رنگ هگز HTML می گیرد، فقط از این مقدار برای تعیین رنگ اصلی استفاده می کند - یعنی جهت آن در اطراف چرخه رنگ، نه اشباع یا روشن بودن آن، که به طور جداگانه به عنوان درصد تغییرات نشان داده می شوند.
به عنوان مثال، می توانید رنگ سبز خالص را به صورت hue:0x00ff00
یا hue:0x000100
تعریف کنید. هر دو رنگ یکسان هستند. هر دو مقدار در مدل رنگی HSL به رنگ سبز خالص اشاره دارند.
یک چرخ رنگی RGB
مقادیر hue
RGB که از قسمتهای مساوی قرمز، سبز و آبی تشکیل شدهاند، یک رنگ را نشان نمیدهند، زیرا هیچ یک از این مقادیر جهتگیری را در فضای مختصات HSL نشان نمیدهند. به عنوان مثال "#000000" (سیاه)، "#FFFFFF" (سفید)، و تمام سایه های خالص خاکستری هستند. برای نشان دادن سیاه، سفید یا خاکستری، باید تمام saturation
حذف کنید (مقدار را روی -100
تنظیم کنید) و به جای آن lightness
تنظیم کنید.
بهعلاوه، هنگام اصلاح ویژگیهای موجود که قبلاً طرح رنگی دارند، تغییر مقداری مانند hue
saturation
یا lightness
موجود آن را تغییر نمیدهد.