Giriş
Maps Static API, bir URL aracılığıyla HTTP isteğine yanıt olarak resim (GIF, PNG veya JPEG) döndürür. Her istek için, haritanın konumunu, resmin boyutunu, yakınlaştırma düzeyini, harita türünü ve isteğe bağlı işaretçilerin haritadaki konumlara yerleşimini belirtebilirsiniz. Ayrıca, işaretçilerinizi alfanümerik karakterler kullanarak etiketleyebilirsiniz.
Maps Static API resmi, <img>
etiketinin src
özelliğine veya diğer programlama dillerindeki eşdeğerine yerleştirilmiştir.
Bu belgede, Maps Static API URL'leri için gereken biçim ve kullanılabilir parametreler açıklanmaktadır. Ayrıca, URL'lerinizi belirtmeyle ilgili bazı ipuçları ve püf noktalarına da işaret eder.
Başlamadan önce
Bu belge, bir web sayfasına veya mobil uygulamaya Maps Static API resimleri eklemek isteyen web sitesi ve mobil uygulama geliştiricileri için hazırlanmıştır. Kılavuz, API'nin kullanımına ve mevcut parametrelerle ilgili referans materyallere giriş niteliğindedir.
Maps Static API ile geliştirmeye başlamadan önce kimlik doğrulama gereksinimlerini (API anahtarına ihtiyacınız vardır) ve API kullanımı ve faturalandırma bilgilerini (projenizde faturalandırmayı etkinleştirmeniz gerekir) inceleyin.
URL parametreleri
Haritalar Statik API URL'si aşağıdaki biçimde olmalıdır:
https://maps.googleapis.com/maps/api/staticmap?parameters
Web sitenize HTTPS üzerinden erişiliyorsa tarayıcı güvenlik uyarılarından kaçınmak için Maps Static API görüntülerini de HTTPS üzerinden yüklemeniz gerekir. HTTPS, istekleriniz kullanıcının konumu gibi hassas kullanıcı bilgileri içeriyorsa de önerilir:
https://maps.googleapis.com/maps/api/staticmap?parameters
İster HTTP ister HTTPS kullanılsın, belirli URL parametreleri gerekliyken bazıları isteğe bağlıdır. URL'lerde standart olduğu gibi, tüm parametreler "ve" (&
) karakteri kullanılarak ayrılır. Parametre listesi ve olası değerleri bu belgede belirtilmiştir.
Maps Static API, harita resimlerini aşağıdaki URL parametrelerini kullanarak tanımlar:
Konum parametreleri
center
(işaretçiler yoksa zorunludur) haritanın merkezini tanımlar, haritanın tüm kenarlarına eşit uzaklıktadır. Bu parametre, konumu, dünya üzerinde benzersiz bir konumu tanımlayan virgülle ayrılmış {latitude,longitude} çifti (ör. "40.714728,-73.998672") veya bir dize adresi (ör. "belediye, istanbul, ny") olarak alır. Daha fazla bilgi için Konumlar konusuna bakın.zoom
(işaretçi yoksa zorunludur), haritanın büyütme seviyesini belirleyen yakınlaştırma düzeyini tanımlar. Bu parametre, istenen bölgenin yakınlaştırma düzeyine karşılık gelen sayısal bir değer alır. Daha fazla bilgi için Yakınlaştırma seviyeleri başlıklı makaleyi inceleyin.
Harita parametreleri
size
(zorunlu), harita görüntüsünün dikdörtgen boyutlarını tanımlar. Bu parametre{horizontal_value}x{vertical_value}
biçiminde bir dize alır. Örneğin500x400
, 500 piksel genişliğinde ve 400 piksel yüksekliğinde bir harita tanımlar. 180 pikselden daha küçük haritalarda daha küçük boyutlu bir Google logosu görüntülenir. Bu parametre,scale
parametresinden etkilenir. Nihai çıktı boyutu, boyut ve ölçek değerlerinin çarpımıdır.scale
(isteğe bağlı), döndürülen piksel sayısını etkiler.scale=2
, aynı kapsama alanını ve ayrıntı düzeyini korurken (yani, harita içeriği değişmez)scale=1
işlevine kıyasla iki kat daha fazla piksel döndürür. Bu özellik, yüksek çözünürlüklü ekranlar için geliştirme yaparken faydalıdır. Varsayılan değer:1
.1
ve2
değerleri kabul edilir. Daha fazla bilgi için Değerleri Ölçeklendirme bölümüne bakın.format
(isteğe bağlı), elde edilen resmin biçimini tanımlar. Varsayılan olarak, Haritalar Statik API'si PNG resimler oluşturur. GIF, JPEG ve PNG türleri dahil olmak üzere birkaç farklı biçim kullanılabilir. Hangi biçimi kullanacağınız, görüntüyü nasıl sunmak istediğinize bağlıdır. JPEG genellikle daha fazla sıkıştırma sağlar, GIF ve PNG ise daha fazla ayrıntı sağlar. Daha fazla bilgi için Resim Biçimleri konusuna bakın.maptype
(isteğe bağlı), oluşturulacak harita türünü tanımlar.roadmap
,satellite
,hybrid
veterrain
dahil olmak üzere birkaç olası eşleme türü değeri vardır. Daha fazla bilgi için Haritalar Statik API'si Harita Türleri konusuna bakın.language
(isteğe bağlı), harita parçalarında etiketlerin gösterilmesi için kullanılacak dili tanımlar. Bu parametrenin yalnızca bazı ülke parçaları için desteklendiğini unutmayın; istenen belirli dil blok grubu için desteklenmiyorsa bu parça grubu için varsayılan dil kullanılır.region
(isteğe bağlı), jeopolitik hassasiyetlere göre görüntülenecek uygun sınırları tanımlar. İki karakterli ccTLD ("üst düzey alan") değeri olarak belirtilen bir bölge kodunu kabul eder. Desteklenen bölgeler için Google Haritalar Platformu Kapsam Ayrıntıları'na bakın.
Özellik parametreleri
map_id
(isteğe bağlı), belirli bir haritanın tanımlayıcısını belirtir. Harita Kimliği, bir haritayı belirli bir stil veya özellikle ilişkilendirir ve haritayı başlatmak için kullanılan API anahtarıyla aynı projeye ait olmalıdır. Daha fazla bilgi için Harita Kimliklerini Kullanma başlıklı yardım makalesini inceleyin.markers
(isteğe bağlı), belirtilen konumlarda resme eklemek için bir veya daha fazla işaretçi tanımlayın. Bu parametre, dikey çizgi karakteri (|
) ile ayrılmış parametreler içeren tek bir işaretçi tanımı alır. Aynı stili gösterdikleri sürece aynımarkers
parametresi içine birden fazla işaretçi yerleştirilebilir. Ekmarkers
parametreleri ekleyerek farklı stillerde ilave işaretçiler ekleyebilirsiniz. Bir harita için işaretçiler sağlarsanızcenter
vezoom
parametrelerini (normalde gerekli) belirtmeniz gerekmediğini unutmayın. Daha fazla bilgi için Haritalar Statik API İşaretçileri konusuna bakın.path
(isteğe bağlı), belirtilen konumlarda resmin üzerinde yer paylaşımlı olacak iki veya daha fazla bağlantılı noktadan oluşan tek bir yol tanımlar. Bu parametre, dikey çizgi karakteri (|
) ile ayrılmış nokta tanımlarından oluşan bir dize veya yolun konum bildirimi içindekienc:
ön ekini kullanan kodlanmış bir çoklu çizgi alır. İlavepath
parametreleri ekleyerek ek yollar sağlayabilirsiniz. Bir harita için yol sağlarsanız (normalde gerekli)center
vezoom
parametrelerini belirtmeniz gerekmediğini unutmayın. Daha fazla bilgi için Haritalar Statik API Yolları konusuna bakın.visible
(isteğe bağlı), haritada görünür kalması gereken bir veya daha fazla konum belirtir, ancak hiçbir işaretçi veya başka gösterge görüntülenmez. Maps Static API'de belirli özelliklerin veya harita konumlarının gösterildiğinden emin olmak için bu parametreyi kullanın.style
(isteğe bağlı), haritanın belirli bir özelliğinin (yollar, parklar ve diğer özellikler) sunumunu değiştirmek için özel bir stil tanımlar. Bu parametre, biçimlendirilecek özellikleri tanımlayanfeature
veelement
bağımsız değişkenleri ile seçilen özelliklere uygulanacak bir dizi stil işlemi alır. İlavestyle
parametreleri ekleyerek birden fazla stil sağlayabilirsiniz. Daha fazla bilgi için stilli haritalar kılavuzuna bakın.
Anahtar ve imza parametreleri
key
(zorunlu), Google Cloud Console'da uygulamanızın API kullanımını izlemenize olanak tanır ve gerektiğinde Google'ın uygulamanız hakkında sizinle iletişime geçmesini sağlar. Daha fazla bilgi için API Anahtarlarını Maps Static API ile kullanma başlıklı makaleye bakın.signature
(önerilir), API anahtarınızı kullanarak istek oluşturan sitelerin bunu yapmaya yetkili olduğunu doğrulamak için kullanılan dijital bir imzadır. Dijital imza olmayan istekler başarısız olabilir. Daha fazla bilgi için Dijital İmza kullanma başlıklı makaleyi inceleyin.
URL boyutu kısıtlaması
Maps Static API URL'lerinin boyutu 16384 karakterle sınırlandırılmıştır. Pratikte, çok sayıda işaretçi ve yol içeren karmaşık haritalar oluşturmadığınız sürece muhtemelen bundan daha uzun URL'lere ihtiyacınız olmaz.
Parametre Kullanımı
Maps Static API, yalnızca parametreleştirilmiş bir URL'den oluştuğu için kullanımı nispeten kolaydır. Bu bölümde, bu parametrelerin URL'lerinizi oluşturmak için nasıl kullanılacağı açıklanmaktadır.
Konumları Belirtme
Maps Static API, hem haritayı doğru konuma odaklayabilmek (center
parametresini kullanarak) hem de/veya harita üzerindeki konumlara isteğe bağlı yer işaretleri (markers
parametresini kullanarak) yerleştirmek için harita üzerinde konumları tam olarak tanımlayabilmelidir. Maps Static API, bu konumları belirtmek için sayılar (enlem ve boylam değerleri) veya dizeler (adresler) kullanır. Bu değerler, coğrafi konuma sahip bir konumu tanımlar.
Çeşitli parametreler (markers
ve path
parametreleri gibi) birden çok konum alır. Böyle durumlarda, konumlar dikey çizgi (|
) karakteriyle ayrılır.
Enlem ve boylamlar
Enlem ve boylamlar, virgülle ayrılmış bir metin dizesinde 6 ondalık basamağa kadar hassasiyete sahip sayılar kullanılarak tanımlanır. Örneğin, "40.714728,-73.998672" geçerli bir coğrafi kod değeridir. 6 ondalık basamaktan sonraki doğruluk göz ardı edilir.
Boylam değerleri, başlangıç meridyenin bulunduğu İngiltere, Greenwich'e uzaklığına dayanır. Greenwich 51.477222 enlemde olduğundan, haritayı Greenwich'te ortalamak için center
değerini 51.477222,0
girebiliriz:
Enlem ve boylam değerleri, dünya yüzeyindeki geçerli bir konuma karşılık gelmelidir. Enlem, -90
ile 90
arasındaki herhangi bir değeri alabilir. Boylam değerleri, -180
ile 180
arasındaki herhangi bir değeri alabilir. Geçersiz bir enlem veya boylam değeri belirtirseniz isteğiniz hatalı bir istek olarak reddedilir.
Adresler
Çoğu kişi enlem ve boylam bilgisini konuşmaz; adresler kullanarak konumları belirtir. Bir adresi coğrafi noktaya dönüştürme işlemi coğrafi kodlama olarak bilinir ve geçerli adresler sağlarsanız Maps Static API hizmeti sizin için coğrafi kodlama gerçekleştirebilir.
Enlem/boylam belirtebileceğiniz tüm parametrelerde, adresi belirten bir dize de belirtebilirsiniz. Google, adresin coğrafi kodlamasını yapar ve Haritalar Static API hizmetine, işaretçi yerleştirme veya konumları belirtmede kullanılacak bir enlem/boylam değeri sağlar. Dize URL kodlamalı olmalıdır. Bu nedenle, "Belediye Binası, New York, NY" gibi adresler örneğin "Şehir+ Salon,New+York,NY" şeklinde dönüştürülmelidir.
Adreslerin açık adresler gibi kesin konumları, adlandırılmış rotalar gibi çoklu çizgileri veya şehir, ülke ya da milli park gibi poligon alanları yansıtabileceğini unutmayın. Haritalar Statik API sunucusu, polilineer ve poligon sonuçlar için çizginin/alanın merkez noktasını adres merkezi olarak kullanır. Bir adresin coğrafi kod kullanımıyla ilgili şüpheniz varsa bu Coğrafi Kodlama Yardımcı Programı'nı kullanarak adresi test edebilirsiniz.
Aşağıdaki örnekte Berkeley, CA için statik bir harita görüntüsü oluşturulmuştur:
https://maps.googleapis.com/maps/api/staticmap?center=Berkeley,CA&zoom=14&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Yakınlaştırma seviyeleri
Google Haritalar'daki haritalar, mevcut görünümün çözünürlüğünü tanımlayan bir tam sayı "yakınlaştırma düzeyi" içerir. 0
(tüm dünyanın tek bir haritada görülebildiği en düşük yakınlaştırma düzeyi) ile 21+
(sokaklara ve tek tek binalara kadar) arasındaki yakınlaştırma seviyeleri, varsayılan roadmap
görünümünde mümkündür. Varsa bina anahatları, haritada 17
yakınlaştırma düzeyinin çevresinde görünür. Bu değer alandan bölgeye değişir ve zaman içinde veriler geliştikçe değişebilir.
Google Haritalar tüm dünyayı kapsayacak şekilde yakınlaştırma düzeyini 0
ayarlıyor.
Başarılı olan her yakınlaştırma düzeyi, hem yatay hem de dikey boyutlarda hassasiyeti iki katına çıkarır. Bunun nasıl yapıldığı konusunda daha fazla bilgiyi Google Maps JavaScript API dokümanlarında bulabilirsiniz.
Not: Tüm yakınlaştırma düzeyleri, dünyadaki tüm konumlarda görünmez. Dünyanın bazı yerlerindeki veriler diğer konumlara göre daha ayrıntılı olduğundan yakınlaştırma seviyeleri konuma bağlı olarak değişiklik gösterir.
Harita karosunun bulunmadığı bir yakınlaştırma düzeyi için istek gönderirseniz Maps Static API, bunun yerine boş bir resim döndürür.
Aşağıdaki listede, her bir yakınlaştırma düzeyinde görmeyi bekleyebileceğiniz yaklaşık ayrıntı düzeyi gösterilmektedir:
- 1: Dünya
- 5: Karalar/kıta
- 10: Şehir
- 15: Sokaklar
- 20: Binalar
Bu örnekte, aynı center
değerine ancak sırasıyla 12 ve 14 yakınlaştırma seviyelerinde iki Manhattan haritası talep edilmektedir:
https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=14&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Resim boyutları:
size
parametresi, center
ile birlikte bir haritanın kapsam alanını tanımlar. Ayrıca, scale
değeriyle (varsayılan olarak 1
) çarpıldığında haritanın çıkış boyutunu piksel cinsinden tanımlar.
Bu tabloda, her bir scale
değerindeki size
parametresi için izin verilen maksimum değerler gösterilmektedir.
scale=1 |
scale=2 |
---|---|
640x640 |
640x640 (1280x1280 piksel döndürür) |
Bu örnekte, ekvatorda 1. yakınlaştırma düzeyinde bir "dilim" istenmektedir:
https://maps.googleapis.com/maps/api/staticmap?center=0,0&zoom=1&size=400x50&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Bu örnekte, aynı bölgede ortalanmış, 100 x 100 piksel boyutunda küçük bir harita istenmiştir. Daha küçük olan Google logosuna dikkat edin:
https://maps.googleapis.com/maps/api/staticmap?center=0,0&zoom=1&size=100x100&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Değerleri ölçeklendirin
Maps Static API'nin size
parametresi, bir haritanın boyutunu piksel cinsinden tanımlar. Böylece, size=200x200
içeren bir harita, 200 piksele 200 piksel boyutunda döndürülür. Genellikle inç başına yaklaşık 100 piksel (ppi) görüntülenen bir LCD bilgisayar monitöründe, 200x200 boyutundaki bir haritanın her bir boyutu yaklaşık 2 inç olur.
Ancak mobil cihazlar giderek artan bir şekilde, 300 ppi'nin üzerinde piksel yoğunluğuna sahip yüksek çözünürlüklü ekranları içermektedir. Bu ekranlardan biri şunlardan biridir:
- 200x200 piksellik bir resmin boyutunu 1 inçin yalnızca 0,7'si olacak şekilde küçülterek etiketleri ve simgeleri okunamayacak kadar küçük hale getirme veya
- Daha okunaklı olması için resmi ölçeklendirerek (yakınlaştırarak) bulanık veya pikselleştirilmiş bir resim elde edin.
Çok küçük | Çok bulanık |
---|---|
![]() |
![]() |
Mobil cihazlar için geliştirme yaparken, yukarıdaki sorunları çözen daha yüksek çözünürlüklü harita görüntüleri döndürmek için API'nin scale
parametresini kullanabilirsiniz. Haritanın kapsama alanını değiştirmeden, resmin piksel cinsinden gerçek çıktı boyutunu belirlemek için scale
değeri size
ile çarpılır. Varsayılan scale
değeri 1, kabul edilen değerler 1 ve 2'dir.
Örneğin, 2 olan ölçek değeri, ölçek belirtilmemiş bir istekle aynı harita kapsam alanını döndürür ancak her bir boyutta iki kat daha fazla piksel içerir. Bu, hem yüksek çözünürlüklü, küçük boyutlu ekranlarda hem de tarayıcı tarafından ölçeklendiğinde okunabilir olmaları için yollar ve etiketleri de içerir.
150x150 | 150x150&ölçek=2 |
---|---|
![]() |
![]() |
Böyle bir resim, yükseklik ve genişlik değeri CSS kullanılarak ayarlanmış bir img
veya div
etiketine eklendiğinde masaüstü tarayıcılarda da iyi performans gösterir. Tarayıcı, kaliteden ödün vermeden resmin boyutunu doğru boyuta küçültür.
Bu tabloda üç farklı resim isteği gösterilmektedir.
- İlki, ölçek değeri belirtilmemiş 100x100 boyutunda bir resimdir. Masaüstünde düzgün bir şekilde görüntüleniyor, ancak mobil cihazda okunamayacak kadar küçüktür.
- İkincisi, harita boyutunu ikiye katlar. CSS, masaüstünde resmi belirtilen 100x100
img
öğesine sığdırır ancak resmin boyutu küçültüldüğünde yollar ve etiketler çok küçük hale gelir. Mobil cihazda resmin doğru boyutta olmasıyla birlikte, yolların ve etiketlerin okunaksız olduğunu tekrar hatırlatmak isteriz. - Üçüncü istek,
scale=2
içeren 100x100 boyutunda bir harita içindir. Resim, 200 piksel ayrıntısıyla döndürülür. Masaüstü bilgisayar, orijinal 100x100 isteğinden ayırt edilemeyeceği şekilde resmi mükemmel bir şekilde ölçeklendirir ve mobil tarayıcı, API'nin döndürdüğü ek çözünürlükten yararlanır.
Resim istekleri | |||
---|---|---|---|
Cihaz | 100x100 |
200x200 |
100x100&scale=2 |
Masaüstü ( img etiketinde height="100px" vewidth="100px" ile) |
![]() |
![]() |
![]() |
Yüksek Çözünürlük (simüle edilmiş) |
![]() |
![]() |
![]() |
Mobil ve yüksek çözünürlüklü ekranlar için geliştirme hakkında daha fazla bilgi için aşağıdaki okumaları okumanız önerilir:
- Android geliştirici dokümanlarında Supporting Multiple Screen (Birden Fazla Ekranı Destekleme) başlıklı bölümü inceleyebilirsiniz.
- Webkit.org'un Yüksek DPI web siteleri geliştirme önerileri.
- iOS Geliştirici Kitaplığı'nda Yüksek Çözünürlüklü Ekranları Destekleme.
Resim biçimleri
Resimler, yaygın olarak kullanılan çeşitli web grafiği biçimlerinde döndürülebilir: GIF, JPEG ve PNG. format
parametresi aşağıdaki değerlerden birini alır:
png8
veyapng
(varsayılan), 8 bit PNG biçimini belirtir.png32
, 32 bit PNG biçimini belirtir.gif
, GIF biçimini belirtir.jpg
, JPEG sıkıştırma biçimini belirtir.jpg-baseline
, aşamalı olmayan bir JPEG sıkıştırma biçimi belirtir.
Şu örneklerde gif
ve png
biçimlerindeki haritalar istenir:
https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&format=gif&zoom=14&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&format=png&&zoom=14&size=400x400&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
jpg
ve jpg-baseline
genellikle en küçük resim boyutunu sağlar. Ancak bu işlemi, resmin bozulmasına neden olabilecek "kayıplı" sıkıştırma yoluyla yaparlar. gif
, png8
ve png32
kayıpsız sıkıştırma sağlar.
Çoğu JPEG görüntüsü progresiftir. Yani daha yüzeysel bir görüntü daha erken yüklenir ve daha fazla veri geldikçe resim çözünürlüğü iyileştirilir. Bu, resimlerin web sayfalarında hızlı bir şekilde yüklenmesine olanak tanır ve şu anda JPEG'nin en yaygın kullanımıdır. Bununla birlikte, bazı JPEG kullanımları progresif olmayan (temel) görüntüler gerektirir. Bu gibi durumlarda, aşamalı olmayan jpg-baseline
biçimini kullanabilirsiniz.
Harita türleri
Maps Static API, aşağıda listelenen çeşitli biçimlerde haritalar oluşturur:
roadmap
(varsayılan) değeri, normalde Google Haritalar web sitesinde gösterildiği gibi standart bir yol haritası resmi belirtir.maptype
değeri belirtilmezse Maps Static API, varsayılan olarakroadmap
karo sunar.satellite
bir uydu görüntüsünü belirtir.terrain
, arazi ve bitki örtüsünü gösteren fiziksel bir rölyef harita resmi belirtir.hybrid
, uydu görüntüsünde ana caddelerin ve yer adlarının şeffaf bir katmanını gösteren uydu ve yol haritası görüntüsünün bir karmasını belirtir.
Yol haritası ile arazi türleri arasındaki farkı bu kod örneğinde görebilirsiniz.
https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&maptype=roadmap&key=YOUR_API_KEY&signature=YOUR_SIGNATURE https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&maptype=terrain&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Hibrit haritalar, uydu görüntülerini ve belirgin yol haritası özelliklerini kullanarak karma haritalar oluşturur. Aşağıdaki örnekler uydu ve karma harita türlerini göstermektedir:
https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&maptype=satellite&key=YOUR_API_KEY&signature=YOUR_SIGNATURE https://maps.googleapis.com/maps/api/staticmap?center=40.714728,-73.998672&zoom=12&size=400x400&maptype=hybrid&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Stil özellikleri ayarlanmış haritalar
Kendi stillerinizi uygulayarak standart Google haritasının sunumunu özelleştirin. Stilli haritalar rehberine bakın.
İşaretçiler
markers
parametresi, bir konum grubunda bir veya daha fazla işaretçi (harita raptiyeleri) grubunu tanımlar. Tek bir markers
beyanında tanımlanan her bir işaretçi aynı görsel stili sergilemelidir. Farklı stillere sahip işaretçileri görüntülemek isterseniz ayrı stil bilgileriyle birden fazla markers
parametresi sağlamanız gerekir.
markers
parametresi, aşağıdaki biçimdeki değer atamalarını (işaretçi tanımlayıcıları) alır:
markers=markerStyles|markerLocation1|
markerLocation2|...
vb.
markerStyles grubu, markers
bildiriminin başında tanımlanır ve dikey çizgi karakteri (|
) ile ayrılmış sıfır veya daha fazla stil açıklayıcısından ve ardından dikey çizgi karakteri (|
) ile ayrılmış bir veya daha fazla konum grubundan oluşur.
Hem stil bilgileri hem de konum bilgileri dikey çizgi karakteriyle sınırlandırıldığından, stil bilgileri herhangi bir işaretçi açıklayıcıda ilk sırada görünmelidir. Maps Static API sunucusu, işaretçi açıklayıcıda bir konumla karşılaştığında diğer tüm işaretçi parametrelerinin de konum olduğu varsayılır.
İşaretçi stilleri
İşaretçi stili açıklayıcıları grubu, dikey çizgi (|
) karakteriyle ayrılmış bir değer atamaları dizisidir. Bu stil açıklayıcı, bu işaretçi açıklayıcı içinde işaretçiler görüntülenirken kullanılacak görsel özellikleri tanımlar. Bu stil tanımlayıcılar aşağıdaki anahtar/değer atamalarını içerir:
size:
(isteğe bağlı),{tiny, mid, small}
grubundaki işaretçinin boyutunu belirtir.size
parametresi ayarlanmazsa işaretçi varsayılan (normal) boyutunda görünür.color:
(isteğe bağlı), 24 bit bir renk (örnek:color=0xFFFFCC
) veya{black, brown, green, purple, yellow, blue, gray, orange, red, white}
kümesinden önceden tanımlanmış bir renk belirtir.Saydamların (32 bit onaltılık renk değerleri kullanılarak belirtilir), yollar için desteklense de işaretçilerde desteklenmediğini unutmayın.
label:
(isteğe bağlı), {A-Z, 0-9} kümesinden tek bir uppercase alfanümerik karakter belirtir. (API'nin bu sürümünde büyük harf karakterleri kullanma zorunluluğu yenidir.) Yalnızca varsayılan vemid
boyutlu işaretçilerinalphanumeric-character
parametresini görüntüleyebildiğini unutmayın.tiny
vesmall
işaretçileri alfa-sayısal karakteri görüntüleyemez.
İşaretçi ölçeklendirme
scale
değeri, işaretçinin piksel cinsinden gerçek çıktı boyutunu elde etmek için işaretçi resminin boyutuyla çarpılır. Varsayılan ölçek değeri 1'dir. Kabul edilen değerler 1, 2 ve 4'tür.
Resimlere ilişkin piksel boyutu sınırı, ölçeklendirme uygulandıktan sonra geçerli olur. Örneğin, işaretçi scale:2
değerine ayarlanırsa işaretçi, ölçeklendirmeden sonra 4.096 pikselin altına indiği sürece maksimum 4.096 piksel boyutundan daha büyük olabilir. Daha yüksek çözünürlüklü haritaları görüntülerken işaretçi ölçeklemeyi harita ölçeklendirme ile birlikte kullanın.
İşaretçi konumları
Her bir işaretçi tanımlayıcısı, işaretçinin haritada nereye yerleştirileceğini tanımlayan bir veya daha fazla konum kümesi içermelidir. Bu konumlar enlem/boylam değerleri veya adres olarak belirtilebilir. Bu konumlar dikey çizgi karakteri (|
) kullanılarak ayrılır.
Not: İşaretçi konumlarını, coğrafi kodlama gerektiren bir yöntem (ör. insanlar tarafından okunabilen adres dizeleri veya çoklu çizgiler) kullanarak belirtmeyi seçerseniz istek en fazla 15 işaretçiyle sınırlandırılır. Bu sınır, yalnızca coğrafi kodlama gerektiren işaretçi konumları için geçerlidir. Enlem/boylam koordinatları ile belirtilen işaretçi konumları için geçerli değildir.
Konum parametreleri, işaretçinin haritadaki konumunu tanımlar. Konum harita dışındaysa center
ve zoom
parametrelerinin sağlanması koşuluyla bu işaretçi oluşturulan resimde görünmez. Ancak bu parametreler sağlanmazsa Maps Static API sunucusu, sağlanan işaretçileri içeren bir resmi otomatik olarak oluşturur.
(Örtülü konumlandırma bölümüne bakın.)
Örnek bir işaretçi bildirimi burada gösterilmektedir. Bir stil grubu ve üç yer tanımladığımıza dikkat edin:
https://maps.googleapis.com/maps/api/staticmap?center=Williamsburg,Brooklyn,NY&zoom=13&size=400x400&
markers=color:blue%7Clabel:S%7C11211%7C11206%7C11222&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Farklı stillere sahip işaretçileri tanımlamak için birden fazla markers
parametresi sağlamamız gerekir. Bu markers
parametre grubu üç işaretçiyi tanımlar: 62.107733 ve -145.5419 numaralı "S" etiketli bir mavi işaretçi, "Delta Junction, AK" adresinde küçük bir yeşil işaretçi ve "Tok, AK"de "C" etiketli orta boyutlu bir sarı işaretçi. Bu işaretçiler bu örnekte gösterilmektedir:
https://maps.googleapis.com/maps/api/staticmap?center=63.259591,-144.667969&zoom=6&size=400x400
&markers=color:blue%7Clabel:S%7C62.107733,-145.541936&markers=size:tiny%7Ccolor:green%7CDelta+Junction,AK
&markers=size:mid%7Ccolor:0xFFFF00%7Clabel:C%7CTok,AK"&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Özel simgeler
Google'ın işaretçi simgelerini kullanmak yerine, kendi özel simgelerinizi
kullanabilirsiniz. Özel simgeler, markers
parametresindeki icon
açıklayıcısı kullanılarak belirtilir. Örneğin:
markers=icon:URLofIcon|markerLocation
icon
özelliğini bir URL kullanarak belirtin (bu, URL kodlamalı olmalıdır). https://goo.gl
gibi URL kısaltma hizmetleri tarafından oluşturulan URL'leri kullanabilirsiniz. Çoğu URL kısaltma hizmeti, URL'leri otomatik olarak kodlama avantajına sahiptir.
Özel simge için bir sabitleme noktası belirtebilirsiniz. Sabitleme noktası, simgenin belirtilen markers
konumlarına göre nasıl yerleştirileceğini belirler. Varsayılan olarak, özel bir simgenin sabitleme noktası simge resminin alt orta noktasıdır. icon
ile birlikte anchor
tanımlayıcısını kullanarak farklı bir sabitleme noktası belirtebilirsiniz. anchor
öğesini, simgenin x,y noktası (10,5
gibi) veya aşağıdaki değerlerden birini kullanarak önceden tanımlanmış bir hizalama olarak ayarlayın:
top
, bottom
, left
, right
,
center
, topleft
, topright
, bottomleft
veya
bottomright
. Örneğin:
markers=anchor:bottomright|icon:URLofIcon|markerLocation1|markerLocation2
İstek başına en fazla beş benzersiz özel simge kullanabilirsiniz. Bu sınırlama, haritanızda yalnızca 5 işaretli yerle sınırlı olduğunuz anlamına gelmez. Her benzersiz simge, haritanızda birden fazla markers
konumuyla kullanılabilir.
Simge biçimi:
- Simge resimleri PNG, JPEG veya GIF biçimlerinde olabilir, ancak PNG önerilir.
- Simgelerin boyutu en fazla 4096 piksel olabilir (kare resimler için 64x64).
Özel simge örnekleri
1. Örnek, özel simgeler oluşturur ve simgeleri kullanarak bağlayıcıları konumlandırır.
https://maps.googleapis.com/maps/api/staticmap?&size=600x400&style=visibility:on
&style=feature:water%7Celement:geometry%7Cvisibility:on
&style=feature:landscape%7Celement:geometry%7Cvisibility:on
&markers=anchor:32,10%7Cicon:https://goo.gl/5y3S82%7CCanberra+ACT
&markers=anchor:topleft%7Cicon:http://tinyurl.com/jrhlvu6%7CMelbourne+VIC
&markers=anchor:topright%7Cicon:https://goo.gl/1oTJ9Y%7CSydney+NSW&key=YOUR_API_KEY
&signature=YOUR_SIGNATURE
2. Örnek, 1. örnek ile aynı özel simgeleri oluşturur, ancak simge konumlarını, alt ortadaki varsayılan sabitleyici temelinde, sabitleri kullanarak ayarlamaz.
https://maps.googleapis.com/maps/api/staticmap?&size=600x400&style=visibility:on
&style=feature:water%7Celement:geometry%7Cvisibility:on
&style=feature:landscape%7Celement:geometry%7Cvisibility:on
&markers=icon:https://goo.gl/5y3S82%7CCanberra+ACT
&markers=icon:http://tinyurl.com/jrhlvu6%7CMelbourne+VIC
&markers=icon:https://goo.gl/1oTJ9Y%7CSydney+NSW&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Haritalar Statik API yolları
path
parametresi, harita resmi üzerinde yer paylaşımlı bir yolla bağlanan bir veya daha fazla konumdan oluşan bir kümeyi tanımlar. path
parametresi, aşağıdaki biçimdeki değer atamalarını (yol tanımlayıcıları) alır:
path=pathStyles|pathLocation1|pathLocation2|...
vb.
Her iki yol noktasının da dikey çizgi karakteri (|
) kullanılarak birbirinden ayrıldığını unutmayın. Hem stil bilgileri hem de nokta bilgileri dikey çizgi karakteriyle sınırlandırıldığından, stil bilgileri herhangi bir yol tanımlayıcıda ilk olarak görünmelidir. Maps Static API sunucusu, yol tanımlayıcısında bir konumla karşılaştığında, diğer tüm yol parametrelerinin de konum olduğu varsayılır.
Yol stilleri
Yol stili açıklayıcıları grubu, dikey çizgi (|
) karakteriyle ayrılmış bir değer atamaları dizisidir. Bu stil açıklayıcı, yolu görüntülerken kullanılacak görsel özellikleri tanımlar. Bu stil tanımlayıcılar aşağıdaki anahtar/değer atamalarını içerir:
weight:
(isteğe bağlı), yolun kalınlığını piksel cinsinden belirtir. Herhangi birweight
parametresi ayarlanmazsa yol varsayılan kalınlığında (5 piksel) görünür.color:
(isteğe bağlı), 24 bit (örnek:color=0xFFFFCC
) veya 32 bit onaltılık değer (örnek:color=0xFFFFCCFF
) olarak ya da{black, brown, green, purple, yellow, blue, gray, orange, red, white}
kümesinden bir renk belirtir.32 bitlik bir onaltılık değer belirtildiğinde son iki karakter 8 bit alfa şeffaflık değerini belirtir. Bu değer,
00
(tamamen şeffaf) ileFF
(tamamen opak) arasında değişir. Saydamlıkların yollarda desteklendiğini, ancak işaretçilerde desteklenmediğini unutmayın.fillcolor:
(isteğe bağlı), hem yolun poligonal alanı işaretlediğini hem de bu alanda bindirme olarak kullanılacak dolgu rengini belirtir. Aşağıdaki konum kümesinin "kapalı" döngüde olması gerekmez; Haritalar Statik API sunucusu, ilk ve son noktaları otomatik olarak birleştirir. Bununla birlikte, özellikle aynı başlangıç ve bitiş konumunu belirtmediğiniz sürece, doldurulmuş alanın dış kısmındaki çizgilerin kapatılmayacağını unutmayın.geodesic:
(isteğe bağlı), istenen yolun, dünyanın kıvrımını izleyen jeodezik bir çizgi olarak yorumlanması gerektiğini belirtir. Yanlış olduğunda yol, ekran alanında düz bir çizgi olarak oluşturulur. Varsayılan olarak "false" (yanlış) değerine ayarlanır.
Bazı örnek yol tanımları:
- İnce mavi çizgi, %50 opaklık:
path=color:0x0000ff80|weight:1
- Düz kırmızı çizgi:
path=color:0xff0000ff|weight:5
- Düz kalın beyaz çizgi:
path=color:0xffffffff|weight:10
Bu yol stilleri isteğe bağlıdır. Varsayılan özellikler istenirse yol özelliklerini tanımlamayı atlayabilirsiniz. Bu durumda, bildirilen ilk noktanın (konum) yerine yol tanımlayıcısının ilk "bağımsız değişkeni" oluşur.
Yol noktaları
Bir yol çizmek için path
parametresi de iki veya daha fazla nokta iletilmelidir. Daha sonra Maps Static API, yolu bu noktalar boyunca belirtilen sırada bağlar. Her pathPoint, pathDescriptor'da |
(dikey çizgi) karakteriyle ayrılmış şekilde gösterilir.
Aşağıdaki örnekte, Union Square NY'den Times Square, NY'ye varsayılan% 50 opaklığa sahip mavi bir yol tanımlanmaktadır.
path
parametresinin özellikleri:
path=color:0x0000ff|weight:5|40.737102,-73.990318|40.749825,-73.987963|40.752946,-73.987384|40.755823,-73.986397
Aşağıdaki örnekte, %100 opaklığa sahip düz kırmızı bir çizgi tanımlamak yerine aynı yol tanımlanmaktadır:
Bu path
parametresinin özellikleri:
path=color:0xff0000ff|weight:5|40.737102,-73.990318|40.749825,-73.987963|40.752946,-73.987384|40.755823,-73.986397
Sonraki örnekte Manhattan içinde bir poligon alan tanımlanmaktadır ve bir dizi kesişim konum olarak iletilmektedir:
Bu path
parametresinin özellikleri:
path=color:0x00000000|weight:5|fillcolor:0xFFFF0033|8th+Avenue+%26+34th+St,New+York,NY|\ 8th+Avenue+%26+42nd+St,New+York,NY|Park+Ave+%26+42nd+St,New+York,NY,NY|\ Park+Ave+%26+34th+St,New+York,NY,NY
Yolun kendisini görünmez, çokgen alanın ise% 15 opaklığa sahip olacağını unutmayın.
Kodlanmış çoklu çizgiler
Bir yol serisi yerine, path
konum bildirimi içindeki enc:
ön ekini kullanarak yolu kodlanmış çoklu çizgi olarak belirtebilirsiniz.
Aşağıdaki örnekte, Alaska Otoyolu'nun Dawson Nehri, BC'den Delta Junction, AK'ye kodlanmış bir çoklu çizgiyle seyrini görebilirsiniz:
https://maps.googleapis.com/maps/api/staticmap
?size=400x400¢er=59.900503,-135.478011&zoom=4
&path=weight:3%7Ccolor:orange%7Cenc:_fisIp~u%7CU}%7Ca@pytA_~b@hhCyhS~hResU%7C%7Cx@oig@rwg@amUfbjA}f[roaAynd@%7CvXxiAt{ZwdUfbjAewYrqGchH~vXkqnAria@c_o@inc@k{g@i`]o%7CF}vXaj\h`]ovs@?yi_@rcAgtO%7Cj_AyaJren@nzQrst@zuYh`]v%7CGbldEuzd@%7C%7Cx@spD%7CtrAzwP%7Cd_@yiB~vXmlWhdPez\_{Km_`@~re@ew^rcAeu_@zhyByjPrst@ttGren@aeNhoFemKrvdAuvVidPwbVr~j@or@f_z@ftHr{ZlwBrvdAmtHrmT{rOt{Zz}E%7Cc%7C@o%7CLpn~AgfRpxqBfoVz_iAocAhrVjr@rh~@jzKhjp@``NrfQpcHrb^k%7CDh_z@nwB%7Ckb@a{R%7Cyh@uyZ%7CllByuZpzw@wbd@rh~@%7C%7CFhqs@teTztrAupHhyY}t]huf@e%7CFria@o}GfezAkdW%7C}[ocMt_Neq@ren@e~Ika@pgE%7Ci%7CAfiQ%7C`l@uoJrvdAgq@fppAsjGhg`@%7ChQpg{Ai_V%7C%7Cx@mkHhyYsdP%7CxeA~gF%7C}[mv`@t_NitSfjp@c}Mhg`@sbChyYq}e@rwg@atFff}@ghN~zKybk@fl}A}cPftcAite@tmT__Lha@u~DrfQi}MhkSqyWivIumCria@ciO_tHifm@fl}A{rc@fbjAqvg@rrqAcjCf%7Ci@mqJtb^s%7C@fbjA{wDfs`BmvEfqs@umWt_Nwn^pen@qiBr`xAcvMr{Zidg@dtjDkbM%7Cd_@
&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Standart yollarda olduğu gibi, path
parametresine bir fillcolor
bağımsız değişkeni aktarılırsa kodlanmış çoklu çizgi yolları da poligon alanları ayırt edebilir.
Aşağıdaki örnekte, Brooklyn, NY için bir poligon alan gösterilmiştir:
https://maps.googleapis.com/maps/api/staticmap
?size=400x400¢er=40.653279,-73.959816&zoom=11
&path=fillcolor:0xAA000033%7Ccolor:0xFFFFFF00%7Cenc:}zswFtikbMjJzZ%7CRdPfZ}DxWvBjWpF~IvJnEvBrMvIvUpGtQpFhOQdKpz@bIx{A%7CPfYlvApz@bl@tcAdTpGpVwQtX}i@%7CGen@lCeAda@bjA%60q@v}@rfAbjA%7CEwBpbAd_@he@hDbu@uIzWcWtZoTdImTdIwu@tDaOXw_@fc@st@~VgQ%7C[uPzNtA%60LlEvHiYyLs^nPhCpG}SzCNwHpz@cEvXg@bWdG%60]lL~MdTmEnCwJ[iJhOae@nCm[%60Aq]qE_pAaNiyBuDurAuB }}Ay%60@%7CEKv_@?%7C[qGji@lAhYyH%60@Xiw@tBerAs@q]jHohAYkSmW?aNoaAbR}LnPqNtMtIbRyRuDef@eT_z@mW_Nm%7CB~j@zC~hAyUyJ_U{Z??cPvg@}s@sHsc@_z@cj@kp@YePoNyYyb@_iAyb@gBw^bOokArcA}GwJuzBre@i\tf@sZnd@oElb@hStW{]vv@??kz@~vAcj@zKa%60Atf@uQj_Aee@pU_UrcA
&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Görüntü alanları
Resimler, visible
parametresini kullanarak görünür konumları belirterek bir görünüm belirtebilir. visible
parametresi, Maps Static API hizmetine, mevcut konumların görünür durumda kalacağı bir harita oluşturması için talimat verir. (Bu parametre, görünür bir bölgeyi tanımlamak için mevcut işaretçiler veya yollarla da birleştirilebilir.) Bir görüntü alanının bu şekilde tanımlanması, tam bir yakınlaştırma düzeyi belirtme ihtiyacını ortadan kaldırır.
Sıradaki örnekte Boston, MA merkezli, Cambridge, MA'da hem MIT hem de Harvard Meydanı'nı içeren bir harita talep edilmektedir:
https://maps.googleapis.com/maps/api/staticmap?center=Boston,MA
&visible=77+Massachusetts+Ave,Cambridge,MA%7CHarvard+Square,Cambridge,MA&size=512x512&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Haritanın örtülü konumlandırması
Normalde, oluşturulan haritanızın konumunu ve yakınlaştırma düzeyini tanımlamak için center
ve zoom
URL parametrelerini belirtmeniz gerekir.
Bununla birlikte, markers
, path
veya visible
parametreleri sağlarsanız bu öğelerin konumlarının değerlendirilmesine bağlı olarak Maps Static API'nin doğru merkez ve yakınlaştırma düzeyini örtülü olarak belirlemesini sağlayabilirsiniz.
İki veya daha fazla öğe sağlıyorsanız, Maps Static API, doğru bir merkez ve yakınlaştırma düzeyi belirleyerek içerilen öğeler için cömert bir kenar boşluğu sağlar. Bu örnekte San Francisco, Oakland ve San Jose, CA'yı içeren bir harita gösterilmektedir:
https://maps.googleapis.com/maps/api/staticmap?size=512x512&maptype=roadmap\
&markers=size:mid%7Ccolor:red%7CSan+Francisco,CA%7COakland,CA%7CSan+Jose,CA&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
Daha büyük resim boyutları
Boyutları 640 x 640 pikselden (veya ölçek değeri 2 olan 1280 x 1280 piksel) büyük resimlere ihtiyacınız varsa lütfen destek ekibiyle iletişime geçin ve aşağıdaki bilgileri sağlayın:
- Kullanım alanınız ve neden büyük boyutlu resimlere ihtiyaç duyduğunuz
- Diğer Google Haritalar Platformu API'lerini (Haritalar JavaScript API'si, Maps Embed API, Android için Haritalar SDK'sı veya iOS için Haritalar SDK'sı) kullanmayı düşünüp düşünmediğiniz ve bunların neden ihtiyaçlarınızı karşılamadığı.
- Büyük boyutlu resimleri nasıl kullanacağınıza ilişkin ekran görüntüleri, örnekler veya örnekler.
- Büyük boyutlu resimler için tahmini aylık kullanımınız.
İsteğinizi, sağladığınız bilgilere göre inceleyip kullanım alanınızın Google Haritalar Platformu Hizmet Şartları'na uygun olup olmadığını belirleriz.
Sağlayabileceğimiz maksimum boyut 2048 x 2048 pikseldir.
Sorun giderme ve destek
Maps Static API'yi kullanma hakkında daha fazla bilgi edinmek için destek sayfasına göz atın.
Bir şeyler ters gittiğinde Maps Static API hata veya uyarı verebilir. Özellikle haritada bir şeylerin eksik olduğunu fark ederseniz uyarıları kontrol etmelisiniz. Yeni bir uygulamayı kullanıma sunmadan önce uyarıları kontrol etmek de iyi bir fikirdir. Uyarıların HTTP üst bilgisinde göründüğü için hemen görünmeyebileceğini unutmayın. Daha fazla bilgi için hatalar ve uyarılar rehberine bakın.