يمكنك تخصيص طريقة عرض خريطة Google العادية من خلال تطبيق أنماطك الخاصة عند استخدام Maps Static API. يمكنك تغيير العرض المرئي للميزات، مثل الطرق والمتنزهات والمناطق المبنية ونقاط الاهتمام الأخرى. يمكنك تغيير لونها أو نمطها لتسليط الضوء على محتوى معيّن، أو لتكمّل المحتوى المحيط بها على الصفحة، أو حتى لإخفاء ميزات معيّنة تمامًا.
أمثلة
يعرض المثال التالي خريطة لبروكلين في الولايات المتحدة، مع تطبيق أنماط لتلوين الطرق المحلية باللون الأخضر الفاتح والمناطق السكنية باللون الأسود. ويؤدي ذلك أيضًا إلى عكس درجة سطوع التصنيفات، ما يجعلها تظهر بشكل أكثر بروزًا على الخلفية الداكنة. يُرجى العِلم أنّ هذا المثال العملي يستخدم ترميز عناوين URL:
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://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

بنية النمط
لإنشاء خريطة منمّقة مخصّصة، أدرِج مَعلمة واحدة أو أكثر من style
في عنوان URL للطلب.
قد يحتوي كل بيان style
على الوسيطات التالية،
المفصولة بأحرف الأنابيب ("|
"):
feature
(اختياري) يشير إلى الميزات التي سيتم اختيارها لتعديل هذا النمط. تشمل العناصر كل ما يظهر على الخريطة، مثل الطرق أو المتنزهات أو نقاط الاهتمام الأخرى. في حال عدم توفّر وسيطةfeature
، ينطبق النمط المحدّد على جميع العناصر.element
(اختياري) يشير إلى عناصر الميزة المحدّدة التي سيتم اختيارها لتعديل هذا النمط. العناصر هي خصائص مميّزة، مثل الهندسة أو التصنيفات. في حال عدم توفّر وسيطelement
، ينطبق النمط على جميع عناصر الميزة المحدّدة.- مجموعة من قواعد الأنماط (إلزامية) يتم تطبيقها على الميزات والعناصر المحدّدة. تطبِّق واجهة برمجة التطبيقات القواعد بالترتيب الذي تظهر به في بيان
style
. يمكنك تضمين أي عدد من القواعد، ضمن قيود طول عنوان URL العادية في Maps Static API.
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
العناصر هي تقسيمات فرعية لميزة. يتألف الطريق، مثلاً، من الخط البياني (الشكل الهندسي) على الخريطة، ومن النص الذي يشير إلى اسمه (التصنيف).
تتوفّر العناصر التالية، ولكن يُرجى العِلم أنّ ميزة معيّنة قد لا تتوافق مع أي من العناصر أو تتوافق مع بعضها أو جميعها:
يتغيّر لون نص التصنيف fill
وstroke
استنادًا إلى مستوى التكبير/التصغير.
للحفاظ على اتساق التجربة على جميع مستويات التكبير أو التصغير، يجب تحديد كل من fill
وstroke
دائمًا.
- يؤدي
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
(قيمة عددية أكبر من أو تساوي صفرًا) وزن الميزة بالبكسل. قد يؤدي ضبط الوزن على قيمة عالية إلى حدوث قص بالقرب من حدود المربّعات.
يتم تطبيق قواعد النمط بالترتيب الذي تحدّده. لا تدمج عمليات متعددة في عملية نمط واحدة. بدلاً من ذلك، حدِّد كل عملية كإدخال منفصل في مصفوفة الأنماط.
ملاحظة: الترتيب مهم، لأنّ بعض العمليات ليست تبادلية. تتضمّن الميزات و/أو العناصر التي يتم تعديلها من خلال عمليات الأنماط (عادةً) أنماطًا حالية. وتعمل العمليات على هذه الأنماط الحالية، إذا كانت متوفّرة.
نموذج درجة اللون والتشبّع والإضاءة
تستخدم الخرائط ذات الأنماط نموذج درجة اللون والتشبّع والسطوع (HSL) للإشارة إلى اللون ضمن عمليات أداة التنسيق. يشير تدرّج اللون إلى اللون الأساسي، وتشير درجة التشبع إلى كثافة هذا اللون، وتشير درجة الإضاءة إلى الكمية النسبية من الأبيض أو الأسود في اللون المكوِّن.
يعدّل تصحيح غاما مستوى الإضاءة في مساحة الألوان، وعادةً ما يتم ذلك لزيادة التباين أو تقليله. بالإضافة إلى ذلك، يحدّد نموذج HSL اللون ضمن مساحة إحداثيات حيث يشير hue
إلى الاتجاه ضمن عجلة الألوان، بينما يشير التشبع والسطوع إلى السعات على طول محاور مختلفة. يتم قياس درجات الألوان ضمن مساحة ألوان تستند إلى النموذج اللوني أحمر أخضر أزرق (RGB)،
وهي تشبه معظم مساحات الألوان المستندة إلى النموذج اللوني أحمر أخضر أزرق (RGB)، باستثناء أنّها لا تتضمّن درجات الأبيض والأسود.
في حين أنّ hue
تأخذ قيمة لون ست عشرية بتنسيق HTML، إلا أنّها تستخدم هذه القيمة فقط لتحديد اللون الأساسي، أي اتجاهه حول عجلة الألوان، وليس تشبّعه أو سطوعه، اللذين يتم تحديدهما بشكل منفصل كتغييرات نسبية.
على سبيل المثال، يمكنك تحديد درجة اللون الأخضر النقي على النحو التالي:
hue:0x00ff00
أو hue:0x000100
. كلا اللونين متطابقان. تشير كلتا القيمتين إلى اللون الأخضر النقي في نموذج ألوان HSL.
عجلة ألوان RGB
لا تشير قيم RGB hue
التي تتألف من أجزاء متساوية من الأحمر والأخضر والأزرق إلى درجة لون، لأنّ أيًا من هذه القيم لا يشير إلى اتجاه في مساحة إحداثيات HSL. تشمل الأمثلة "#000000" (أسود) و"#FFFFFF" (أبيض) وجميع درجات الرمادي النقية. للإشارة إلى اللون الأسود أو الأبيض أو الرمادي، عليك إزالة كل saturation
(ضبط القيمة على -100
) وتعديل lightness
بدلاً من ذلك.
بالإضافة إلى ذلك، عند تعديل ميزات حالية تتضمّن نظام ألوان، لن يؤدي تغيير قيمة مثل hue
إلى تغيير saturation
أو lightness
الحاليَين.