Bạn có thể tuỳ chỉnh chế độ cài đặt ngôn ngữ và khu vực được dùng trong bản đồ bằng cách thay đổi chế độ cài đặt ngôn ngữ mặc định và mã khu vực của bản đồ. Việc này có thể ảnh hưởng đến hành vi của bản đồ dựa trên quốc gia hoặc lãnh thổ được chỉ định.
Xem phạm vi cung cấp của Bản đồ 3D trong Maps JavaScript trong bảng Phạm vi cung cấp của Maps.
Bản địa hoá ngôn ngữ
Theo mặc định, API JavaScript của Maps sử dụng chế độ cài đặt ngôn ngữ mà người dùng chỉ định trong trình duyệt của họ để xác định bản dịch nào của bản đồ sẽ được sử dụng. Tuy nhiên, bạn có thể thay đổi chế độ này và đặt một ngôn ngữ cụ thể để sử dụng bằng cách đặt tham số language khi tạo bản đồ 3D. Bạn có thể cập nhật ngôn ngữ và khu vực sau khi khởi chạy bản đồ.
Việc đặt tham số language sẽ ảnh hưởng đến ngôn ngữ hiển thị của các thành phần điều khiển, chú thích và thông báo bản quyền. Ngôn ngữ này cũng ảnh hưởng đến bản dịch của các đặc điểm chính trị, từ mô tả và đặc điểm tự nhiên; chẳng hạn như thay đổi "Geneva" thành "Genève" hoặc "lake" thành "lac", hoặc thay đổi hướng hiển thị ngôn ngữ.
Bản đồ 3D trong Maps JavaScript tìm các lựa chọn ưu tiên về bản địa hoá theo thứ tự sau. Nếu không xác định được lựa chọn ưu tiên ở bước đầu tiên, thì hệ thống sẽ tiếp tục tìm theo thứ tự đã chỉ định. Mọi hướng dẫn bản địa hoá xung đột đều được giải quyết dựa trên mức độ ưu tiên được xác định dưới đây:
- Định nghĩa Map3DElement. Đây là nơi đầu tiên mà Bản đồ 3D tìm các lựa chọn ưu tiên về bản địa hoá.
- Trình tải Maps JavaScript API. Ngôn ngữ được chỉ định khi tải Maps JavaScript API sẽ được sử dụng.
- Chế độ cài đặt trình duyệt và miền. Chế độ cài đặt trình duyệt được dùng cho ngôn ngữ, còn miền mà Maps JavaScript API được tải từ đó sẽ được dùng cho khu vực.
Ví dụ sau đây cho thấy một bản đồ bằng tiếng Trung và đặt khu vực là Trung Quốc:
TypeScript
async function init() { const { Map3DElement } = await google.maps.importLibrary('maps3d'); const map = new Map3DElement({ center: { lat: 49.75371685807847, lng: -123.13227141171181, altitude: 30, }, tilt: 50.64793990040634, heading: 44.480020261589154, range: 51618.36056532338, language: 'ZH', region: 'CN', mode: 'HYBRID', }); document.body.append(map); } void init();
JavaScript
async function init() { const { Map3DElement } = await google.maps.importLibrary('maps3d'); const map = new Map3DElement({ center: { lat: 49.75371685807847, lng: -123.13227141171181, altitude: 30, }, tilt: 50.64793990040634, heading: 44.480020261589154, range: 51618.36056532338, language: 'ZH', region: 'CN', mode: 'HYBRID', }); document.body.append(map); } void init();
CSS
/* * Always set the map height explicitly to define the size of the div element * that contains the map. */ #gmp-map-3d { height: 100%; } html, body { height: 100%; margin: 0; padding: 0; }
HTML
<html>
<head>
<title>3d localization</title>
<link rel="stylesheet" type="text/css" href="./style.css" />
<script type="module" src="./index.js"></script>
<script>
// prettier-ignore
(g=>{var h,a,k,p="The Google Maps JavaScript API",c="google",l="importLibrary",q="__ib__",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement("script"));e.set("libraries",[...r]+"");for(k in g)e.set(k.replace(/[A-Z]/g,t=>"_"+t[0].toLowerCase()),g[k]);e.set("callback",c+".maps."+q);a.src=`https://maps.${c}apis.com/maps/api/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+" could not load."));a.nonce=m.querySelector("script[nonce]")?.nonce||"";m.head.append(a)}));d[l]?console.warn(p+" only loads once. Ignoring:",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({
key: "GOOGLE_MAPS_API_KEY"
});
</script>
</head>
<body></body>
</html>Bản địa hoá theo khu vực
Tham số region có thể phân phát các ô bản đồ khác nhau hoặc thiên về các kết quả phù hợp hơn với khu vực. Ngoài ra, việc đặt thẻ khu vực sẽ đảm bảo rằng ứng dụng tuân thủ luật pháp địa phương bằng cách đảm bảo rằng bản địa hoá theo khu vực chính xác được áp dụng cho quốc gia nơi ứng dụng được lưu trữ.