يمكنك تخصيص طريقة عرض خريطة 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
(سلسلة 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 التلقائي، وذلك باستخدام منحنى غاما. إذا أجرت Google أي تغييرات على ملف تعريف النمط الأساسي للخريطة، ستؤثر التغييرات في عناصر الخريطة التي تم تصميمها باستخدام
gamma
. من الأفضل استخدامcolor
المطلق إذا أمكن.invert_lightness
(إذا كانtrue
) يعكس السطوع الحالي. يكون ذلك مفيدًا، على سبيل المثال، لشدَّة التبديل بسرعة إلى خريطة أغمق مع نص أبيض.ملاحظة: يعكس هذا الخيار ببساطة نمط Google التلقائي. إذا أجرت Google أي تغييرات على نمط الخريطة الأساسية، ستؤثر التغييرات في عناصر الخريطة التي تم تصميمها باستخدام
invert_lightness
. من الأفضل استخدام أداة تنسيقcolor
المطلقة إذا أمكن.- يشير العنصر
visibility
(on
أوoff
أوsimplified
) إلى ما إذا كان العنصر يظهر على الخريطة وكيف يظهر. تزيل إعدادات مستوى الرؤيةsimplified
بعض ميزات الأنماط من العناصر المتأثرة. على سبيل المثال، يتم تبسيط الطرق إلى خطوط أرق بدون حدود، بينما تفقد الحدائق نص تصنيفها مع الاحتفاظ برمز التصنيف. color
(سلسلة سداسية عشرية بتنسيق RGB#RRGGBB
) لضبط لون العنصرweight
(قيمة عددية أكبر من أو تساوي الصفر) تُستخدَم لتحديد أهمية العنصر، بالبكسل. قد يؤدي ضبط الوزن على قيمة عالية إلى اقتصاص المحتوى بالقرب من حدود المربّعات.
يتم تطبيق قواعد الأنماط بالترتيب الذي تحدّده. لا تجمع بين عمليات متعددة في عملية نمط واحدة. بدلاً من ذلك، حدِّد كل عملية كإدخال منفصل في صفيف الأنماط.
ملاحظة: من المهم مراعاة الترتيب، لأنّ بعض العمليات ليست تبديلية. إنّ الميزات و/أو العناصر التي يتم تعديلها من خلال عمليات الأنماط (عادةً) تملك (عادةً) أنماطًا حالية. تعمل العمليات على هذه الأنماط الحالية، إن توفّرت.
نموذج درجة اللون والتشبّع والسطوع
تستخدِم الخرائط المنمَّقة نموذج hue (الصبغة)، saturation (تشبع اللون)، lightness (درجة الإضاءة) (HSL) للإشارة إلى اللون ضمن عمليات أداة التنسيق. يشير تدرّج اللون إلى اللون الأساسي، ويشير التشبع إلى كثافة هذا اللون، ويشير الإضاءة إلى الكمية النسبية للأبيض أو الأسود في اللون المكوّن.
يعمل تصحيح جاما على تعديل السطوع في مساحة الألوان، بشكل عام
لزيادة التباين أو خفضه. بالإضافة إلى ذلك، يحدِّد نموذج HSL اللون
ضمن مساحة إحداثيات يشير فيها hue
إلى الاتجاه
ضمن عجلة الألوان، في حين تشير التشبّع والسطوع إلى النطاقات القصوى
على طول محاور مختلفة. يتم قياس درجات الألوان ضمن مساحة ألوان RGB،
والتي تشبه معظم مساحات ألوان RGB، باستثناء أنّها لا تتضمّن درجات الأبيض
والأسود.
على الرغم من أنّ السمة hue
تأخذ قيمة لون سداسي عشري بتنسيق HTML، إلا أنّها لا تستخدِم هذه القيمة إلا
لتحديد اللون الأساسي، أي اتجاهه حول عجلة
الألوان، وليس تشبعه أو خفّته، اللذان يتم تحديدهما
بشكل منفصل كنسب مئوية للتغييرات.
على سبيل المثال، يمكنك تحديد درجة اللون الأخضر الخالص على النحو التالي:
hue:0x00ff00
أو hue:0x000100
. كلا اللونَين
متطابقَين. تشير كلتا القيمتَين إلى اللون الأخضر الخالص في نموذج ألوان HSL.
عجلة ألوان RGB
لا تشير قيم RGB hue
التي تتألف من أجزاء متساوية من الأحمر والأخضر والأزرق
إلى درجة لون، لأنّ أيًا من هذه القيم لا يشير إلى اتجاه في
مساحة إحداثيات HSL. وتشمل الأمثلة على ذلك "#000000" (أسود) و"#FFFFFF" (أبيض)
وجميع درجات الرمادي النقية. للإشارة إلى اللون الأسود أو الأبيض أو الرمادي، يجب
إزالة كل saturation
(ضبط القيمة على -100
)
وتعديل lightness
بدلاً من ذلك.
بالإضافة إلى ذلك، عند تعديل ميزات حالية تتضمّن مخطّط لون
، لا يؤدي تغيير قيمة مثل hue
إلى تغيير
saturation
أو lightness
الحاليَين.