Tuỳ chỉnh cách trình bày bản đồ Google tiêu chuẩn bằng cách áp dụng kiểu riêng khi sử dụng Maps Static API. Bạn có thể thay đổi cách hiển thị trực quan các đối tượng địa lý như đường bộ, công viên, khu dân cư và các điểm tham quan khác. Thay đổi màu sắc hoặc kiểu của các đối tượng địa lý này để làm nổi bật nội dung cụ thể, bổ sung nội dung xung quanh trên trang hoặc thậm chí ẩn hoàn toàn các đối tượng địa lý.
Ví dụ
Ví dụ sau đây cho thấy bản đồ Brooklyn, Hoa Kỳ, với kiểu để tô màu xanh lục sáng cho các đường địa phương và màu đen cho các khu dân cư. Ví dụ này cũng đảo ngược độ sáng của nhãn để nhãn nổi bật hơn trên nền tối. Xin lưu ý rằng ví dụ hoạt động này sử dụng phương thức mã hoá 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
Ví dụ sau đây sử dụng các thao tác tạo kiểu và đơn giản hoá để gần giống với giao diện của một tập bản đồ đường bộ ở Hoa Kỳ:
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
Cú pháp kiểu
Để tạo bản đồ có kiểu tuỳ chỉnh, hãy thêm một hoặc nhiều style
tham số vào URL yêu cầu.
Mỗi style khai báo có thể chứa các đối số sau,
được phân tách bằng ký tự gạch đứng ("|"):
feature(không bắt buộc) cho biết các đối tượng địa lý cần chọn để sửa đổi kiểu này. Các đối tượng địa lý bao gồm những thứ trên bản đồ, chẳng hạn như đường bộ, công viên hoặc các điểm tham quan khác. Nếu không có đối sốfeature, kiểu được chỉ định sẽ áp dụng cho tất cả các đối tượng địa lý.element(không bắt buộc) cho biết(các) phần tử của đối tượng địa lý được chỉ định cần chọn để sửa đổi kiểu này. Các phần tử là đặc điểm của một đối tượng địa lý, chẳng hạn như hình học hoặc nhãn. Nếu không cóelementđối số nào, kiểu này sẽ áp dụng cho tất cả các phần tử của đối tượng địa lý được chỉ định.- Một tập hợp quy tắc về kiểu (bắt buộc) để áp dụng cho(các) đối tượng địa lý và(các) phần tử được chỉ định. API áp dụng các quy tắc theo thứ tự xuất hiện trong
chúng xuất hiện trong khai báo
style. Bạn có thể thêm số lượng quy tắc bất kỳ, trong phạm vi các ràng buộc về độ dài URL thông thường của Maps Static API.
style=feature:myFeatureArgument|element:myElementArgument|myRule1:myRule1Argument|myRule2:myRule2Argument
Đối tượng địa lý
Khai báo style sau đây tô màu tất cả các đường trên bản đồ:
style=feature:road|color:0xffffff
Dưới đây là một số lựa chọn đối tượng địa lý thường gặp:
feature:all(mặc định) chọn tất cả các đối tượng địa lý trên bản đồ.feature:roadchọn tất cả các đường trên bản đồ.feature:road.localchọn tất cả các đường địa phương.
Các đối tượng địa lý hoặc loại đối tượng địa lý là các đặc điểm địa lý trên bản đồ, bao gồm đường bộ, công viên, vùng nước, doanh nghiệp và nhiều đối tượng khác.
Các đối tượng địa lý tạo thành một cây danh mục, với all
là gốc. Nếu bạn không chỉ định một đối tượng địa lý, thì tất cả các đối tượng địa lý sẽ được chọn.
Việc chỉ định một đối tượng địa lý thuộc all sẽ có tác dụng tương tự.
Một số đối tượng địa lý chứa các đối tượng địa lý con mà bạn chỉ định bằng cách sử dụng ký hiệu dấu chấm. Ví dụ: landscape.natural hoặc
road.local. Nếu bạn chỉ chỉ định đối tượng địa lý gốc, chẳng hạn như
road, thì các kiểu mà bạn chỉ định cho đối tượng địa lý gốc sẽ áp dụng cho
tất cả các đối tượng địa lý con của đối tượng đó, chẳng hạn như road.local và
road.highway.
Xin lưu ý rằng các đối tượng địa lý gốc có thể bao gồm một số phần tử không có trong tất cả các đối tượng địa lý con của chúng.
Bạn có thể sử dụng các đối tượng địa lý sau:
all(mặc định) chọn tất cả các đối tượng địa lý.administrativechọn tất cả các khu vực hành chính. Việc tạo kiểu chỉ ảnh hưởng đến nhãn của các khu vực hành chính, chứ không ảnh hưởng đến đường biên giới địa lý hoặc vùng tô.administrative.countrychọn các quốc gia.administrative.land_parcelchọn các lô đất.administrative.localitychọn các địa phương.administrative.neighborhoodchọn các khu dân cư.administrative.provincechọn các tỉnh.
landscapechọn tất cả các cảnh quan.landscape.man_madechọn các đối tượng địa lý do con người tạo ra, chẳng hạn như các toà nhà và công trình khác.landscape.naturalchọn các đối tượng địa lý tự nhiên, chẳng hạn như núi, sông, sa mạc và sông băng.landscape.natural.landcoverchọn các đối tượng địa lý bao phủ đất, vật liệu vật lý bao phủ bề mặt trái đất, chẳng hạn như rừng, đồng cỏ, vùng đất ngập nước và đất trống.landscape.natural.terrainchọn các đối tượng địa lý địa hình của bề mặt đất, chẳng hạn như độ cao, độ dốc và hướng.
poichọn tất cả các điểm tham quan.poi.attractionchọn các điểm du lịch.poi.businesschọn các doanh nghiệp.poi.governmentchọn các toà nhà chính phủ.poi.medicalchọn các dịch vụ khẩn cấp, bao gồm bệnh viện, hiệu thuốc, cảnh sát, bác sĩ và các dịch vụ khác.poi.parkchọn các công viên.poi.place_of_worshipchọn các địa điểm thờ tự, bao gồm nhà thờ, đền, nhà thờ Hồi giáo và các địa điểm khác.poi.schoolchọn các trường học.poi.sports_complexchọn các khu liên hợp thể thao.
roadchọn tất cả các đường.road.arterialchọn các đường chính.road.highwaychọn các đường cao tốc.road.highway.controlled_accesschọn các đường cao tốc có kiểm soát ra vào.road.localchọn các đường địa phương.
transitchọn tất cả các nhà ga và tuyến vận chuyển công cộng.transit.linechọn các tuyến vận chuyển công cộng.transit.stationchọn tất cả các nhà ga vận chuyển công cộng.transit.station.airportchọn các sân bay.transit.station.buschọn các trạm xe buýt.transit.station.railchọn các nhà ga đường sắt.
waterchọn các vùng nước.
Phần tử
Khai báo style sau đây tô màu nhãn cho tất cả các đường địa phương:
style=feature:road.local|element:labels|color:0xffffff
Các phần tử là các phân vùng của một đối tượng địa lý. Ví dụ: một đường bao gồm đường đồ hoạ (hình học ) trên bản đồ và cả văn bản biểu thị tên của đường đó (nhãn).
Bạn có thể sử dụng các phần tử sau, nhưng xin lưu ý rằng một đối tượng địa lý cụ thể có thể không hỗ trợ, hỗ trợ một số hoặc hỗ trợ tất cả các phần tử:
Màu fill và stroke của văn bản nhãn thay đổi dựa trên mức thu phóng.
Để có trải nghiệm nhất quán trên các mức thu phóng, hãy luôn xác định cả fill
và stroke.
all(mặc định) chọn tất cả các phần tử của đối tượng địa lý được chỉ định.-
geometrychọn tất cả các phần tử hình học của đối tượng địa lý được chỉ định.geometry.fillchỉ chọn vùng tô của hình học của đối tượng địa lý.geometry.strokechỉ chọn đường viền của hình học của đối tượng địa lý.
-
labelschọn các nhãn văn bản được liên kết với đối tượng địa lý được chỉ định.labels.iconchỉ chọn biểu tượng xuất hiện trong nhãn của đối tượng địa lý.labels.textchỉ chọn văn bản của nhãn.-
labels.text.fillchỉ chọn vùng tô của nhãn. Vùng tô của nhãn thường được hiển thị dưới dạng đường viền màu bao quanh văn bản nhãn. labels.text.strokechỉ chọn đường viền của văn bản của nhãn.
Quy tắc về kiểu
Quy tắc về kiểu là các lựa chọn định dạng được áp dụng cho các đối tượng địa lý
và phần tử được chỉ định trong mỗi style khai báo.
Khai báo style sau đây áp dụng 2 quy tắc về kiểu cho các
đường trên bản đồ. Quy tắc đầu tiên áp dụng một màu cho các đường. Quy tắc thứ hai
đơn giản hoá cách hiển thị các đường, để các đường có đường mỏng hơn mà không có
đường viền:
style=feature:road|color:0xffffff|visibility:simplified
Mỗi khai báo style phải chứa một hoặc nhiều thao tác được phân tách bằng ký tự gạch đứng ("|"). Mỗi thao tác chỉ định giá trị đối số bằng ký tự dấu hai chấm (":") và tất cả các thao tác đều áp dụng cho lựa chọn theo thứ tự mà bạn chỉ định.
Các lựa chọn kiểu sau được hỗ trợ:
hue(chuỗi hex RGB có định dạng#RRGGBB) cho biết màu cơ bản.Lưu ý: Lựa chọn này đặt sắc độ trong khi vẫn giữ độ rực màu và độ sáng được chỉ định trong kiểu mặc định của Google (hoặc trong các lựa chọn kiểu khác mà bạn xác định trên bản đồ). Màu kết quả tương ứng với kiểu của bản đồ cơ sở. Nếu Google thay đổi kiểu bản đồ cơ sở, thì những thay đổi đó ảnh hưởng đến các đối tượng địa lý trên bản đồ của bạn được tạo kiểu bằng
hue. Bạn nên sử dụng bộ tạo kiểucolortuyệt đối nếu có thể.lightness(giá trị dấu phẩy động từ-100và100) cho biết tỷ lệ phần trăm thay đổi về độ sáng của phần tử. Giá trị âm làm tăng độ tối (trong đó -100 chỉ định màu đen) trong khi giá trị dương làm tăng độ sáng (trong đó +100 chỉ định màu trắng).Lưu ý: Lựa chọn này đặt độ sáng trong khi vẫn giữ độ rực màu và sắc độ được chỉ định trong kiểu mặc định của Google (hoặc trong các lựa chọn kiểu khác mà bạn xác định trên bản đồ). Màu kết quả tương ứng với kiểu của bản đồ cơ sở. Nếu Google thay đổi kiểu bản đồ cơ sở, thì những thay đổi đó ảnh hưởng đến các đối tượng địa lý trên bản đồ của bạn được tạo kiểu bằng
lightness. Bạn nên sử dụng bộ tạo kiểucolortuyệt đối nếu có thể.saturation(giá trị dấu phẩy động từ-100và100) cho biết tỷ lệ phần trăm thay đổi về cường độ của màu cơ bản để áp dụng cho phần tử.Lưu ý: Lựa chọn này đặt độ rực màu trong khi vẫn giữ sắc độ và độ sáng được chỉ định trong kiểu mặc định của Google (hoặc trong các lựa chọn kiểu khác mà bạn xác định trên bản đồ). Màu kết quả tương ứng với kiểu của bản đồ cơ sở. Nếu Google thay đổi kiểu bản đồ cơ sở, thì những thay đổi đó ảnh hưởng đến các đối tượng địa lý trên bản đồ của bạn được tạo kiểu bằng
saturation. Bạn nên sử dụng bộ tạo kiểucolortuyệt đối nếu có thể.gamma(giá trị dấu phẩy động từ0.01đến10.0, trong đó1.0không áp dụng điều chỉnh) cho biết mức điều chỉnh gamma cần áp dụng cho phần tử. Các điều chỉnh gamma sửa đổi độ sáng của màu theo cách phi tuyến tính, trong khi không ảnh hưởng đến giá trị màu trắng hoặc màu đen. Bạn thường sử dụng tính năng điều chỉnh gamma để sửa đổi độ tương phản của nhiều phần tử. Ví dụ: bạn có thể sửa đổi gamma để tăng hoặc giảm độ tương phản giữa các cạnh và phần bên trong của các phần tử.Lưu ý: Lựa chọn này điều chỉnh độ sáng tương ứng với kiểu mặc định của Google style, bằng cách sử dụng đường cong gamma. Nếu Google thay đổi kiểu bản đồ cơ sở, thì những thay đổi đó sẽ ảnh hưởng đến các đối tượng địa lý trên bản đồ của bạn được tạo kiểu bằng
gamma. Bạn nên sử dụng bộ tạo kiểucolortuyệt đối nếu có thể.invert_lightness(nếutrue) đảo ngược độ sáng hiện có. Ví dụ: tính năng này hữu ích để nhanh chóng chuyển sang bản đồ tối hơn với văn bản màu trắng.Lưu ý: Lựa chọn này chỉ đảo ngược kiểu mặc định của Google. Nếu Google thay đổi kiểu bản đồ cơ sở, thì những thay đổi đó sẽ ảnh hưởng đến các đối tượng địa lý trên bản đồ của bạn được tạo kiểu bằng
invert_lightness. Bạn nên sử dụng bộ tạo kiểucolortuyệt đối nếu có thể.visibility(on,off, hoặcsimplified) cho biết liệu và cách phần tử xuất hiện trên bản đồ. Chế độ hiển thịsimplifiedsẽ xoá một số đối tượng địa lý có kiểu khỏi các đối tượng địa lý bị ảnh hưởng; ví dụ: các đường được đơn giản hoá thành các đường mỏng hơn mà không có đường viền, trong khi các công viên mất văn bản nhãn nhưng vẫn giữ lại biểu tượng nhãn.color(chuỗi hex RGB có định dạng#RRGGBB) đặt màu của đối tượng địa lý.weight(giá trị số nguyên, lớn hơn hoặc bằng 0) đặt trọng số của đối tượng địa lý, tính bằng pixel. Việc đặt trọng số thành giá trị cao có thể dẫn đến việc cắt gần đường viền ô.
Các quy tắc về kiểu được áp dụng theo thứ tự mà bạn chỉ định. Đừng kết hợp nhiều thao tác thành một thao tác tạo kiểu duy nhất. Thay vào đó, hãy xác định từng thao tác dưới dạng một mục riêng trong mảng kiểu.
Lưu ý: Thứ tự rất quan trọng, vì một số thao tác không có tính giao hoán. Các đối tượng địa lý và/hoặc phần tử được sửa đổi thông qua các thao tác tạo kiểu (thường) đã có các kiểu hiện có. Các thao tác hoạt động trên những kiểu hiện có đó, nếu có.
Mô hình sắc độ, độ rực màu, độ sáng
Bản đồ có kiểu sử dụng mô hình sắc độ, độ rực màu, độ sáng (HSL) để biểu thị màu trong các thao tác tạo kiểu. Sắc độ cho biết màu cơ bản, độ rực màu cho biết cường độ của màu đó và độ sáng cho biết lượng màu trắng hoặc màu đen tương đối trong màu thành phần.
Tính năng điều chỉnh gamma sửa đổi độ sáng trên không gian màu, thường là để tăng hoặc giảm độ tương phản. Ngoài ra, mô hình HSL xác định màu
trong không gian toạ độ, trong đó hue cho biết hướng
trong bánh xe màu, trong khi độ rực màu và độ sáng cho biết biên độ
dọc theo các trục khác nhau. Sắc độ được đo trong không gian màu RGB,
tương tự như hầu hết các không gian màu RGB, ngoại trừ việc không có các sắc thái màu trắng và
màu đen.

Mặc dù hue lấy giá trị màu hex HTML, nhưng chỉ sử dụng giá trị này
để xác định màu cơ bản – tức là hướng của màu đó xung quanh bánh xe màu,
chứ không phải độ rực màu hoặc độ sáng của màu đó. Các giá trị này được
biểu thị riêng dưới dạng tỷ lệ phần trăm thay đổi.
Ví dụ: bạn có thể xác định sắc độ cho màu xanh lục thuần khiết là
hue:0x00ff00 hoặc hue:0x000100. Cả hai sắc độ đều
giống hệt nhau. Cả hai giá trị đều chỉ đến màu xanh lục thuần khiết trong mô hình màu HSL.

Bánh xe màu RGB
Các giá trị RGB hue bao gồm các phần bằng nhau của màu đỏ, màu xanh lục và màu xanh dương
không cho biết sắc độ, vì không có giá trị nào trong số đó cho biết hướng trong
không gian toạ độ HSL. Ví dụ: "#000000" (màu đen), "#FFFFFF" (màu trắng),
và tất cả các sắc thái màu xám thuần khiết. Để biểu thị màu đen, màu trắng hoặc màu xám, bạn phải
xoá tất cả saturation (đặt giá trị thành -100) và
điều chỉnh lightness thay thế.
Ngoài ra, khi sửa đổi các đối tượng địa lý hiện có đã có bảng phối màu, việc thay đổi giá trị chẳng hạn như hue sẽ không thay đổi saturation hoặc lightness hiện có.