123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160 |
- // convert-geojson-names.cjs
- // 该脚本用于将 GeoJSON 文件中的国家/地区名称从英文转换为中文
- const fs = require('fs');
- const path = require('path');
- // 英文-中文对照表(可补充)
- const nameMap = {
- "China": "中国",
- "United States of America": "美国",
- "Japan": "日本",
- "South Korea": "韩国",
- "Australia": "澳大利亚",
- "Canada": "加拿大",
- "Russia": "俄罗斯",
- "India": "印度",
- "Brazil": "巴西",
- "United Kingdom": "英国",
- "France": "法国",
- "Germany": "德国",
- "Italy": "意大利",
- "New Zealand": "新西兰",
- "Papua New Guinea": "巴布亚新几内亚",
- "Fiji": "斐济",
- "Samoa": "萨摩亚",
- "Tonga": "汤加",
- "Vanuatu": "瓦努阿图",
- "Solomon Islands": "所罗门群岛",
- "Micronesia": "密克罗尼西亚",
- "Palau": "帕劳",
- "Nauru": "瑙鲁",
- "Tuvalu": "图瓦卢",
- "Kiribati": "基里巴斯",
- "Maldives": "马尔代夫",
- "Sri Lanka": "斯里兰卡",
- "Cambodia": "柬埔寨",
- "Vietnam": "越南",
- "Thailand": "泰国",
- "Philippines": "菲律宾",
- "Indonesia": "印度尼西亚",
- "Myanmar": "缅甸",
- "Pakistan": "巴基斯坦",
- "Nepal": "尼泊尔",
- "Bangladesh": "孟加拉国",
- "Mongolia": "蒙古",
- "Tajikistan": "塔吉克斯坦",
- "Uzbekistan": "乌兹别克斯坦",
- "Kazakhstan": "哈萨克斯坦",
- "Chile": "智利",
- "Argentina": "阿根廷",
- "Colombia": "哥伦比亚",
- "Peru": "秘鲁",
- "Bolivia": "玻利维亚",
- "Ecuador": "厄瓜多尔",
- "Paraguay": "巴拉圭",
- "Uruguay": "乌拉圭",
- "Hong Kong": "中国香港",
- "Macau": "中国澳门",
- "Taiwan": "中国台湾",
- "South Africa": "南非",
- "Nigeria": "尼日利亚",
- "Kenya": "肯尼亚",
- "Egypt": "埃及",
- "Morocco": "摩洛哥",
- "Ghana": "加纳",
- "Senegal": "塞内加尔",
- "Tanzania": "坦桑尼亚",
- "Uganda": "乌干达",
- "Zimbabwe": "津巴布韦",
- "Algeria": "阿尔及利亚",
- "Mali": "马里",
- "Cameroon": "喀麦隆",
- "Gabon": "加蓬",
- "Congo": "刚果",
- "Angola": "安哥拉",
- "Mozambique": "莫桑比克",
- "Zambia": "赞比亚",
- "Botswana": "博茨瓦纳",
- "Zambia": "赞比亚",
- "Madagascar": "马达加斯加",
- "Rwanda": "卢旺达",
- "Burundi": "布隆迪",
- "Togo": "多哥",
- "Benin": "贝宁",
- "Niger": "尼日",
- "Chad": "乍得",
- "Cameroon": "喀麦隆",
- "South Sudan": "南苏丹",
- "Sudan": "苏丹",
- "Libya": "利比亚",
- "Ethiopia": "埃塞俄比亚",
- "Djibouti": "吉布提",
- "Somalia": "索马里",
- "Eritrea": "厄立特里亚",
- "Seychelles": "塞舌尔",
- "Comoros": "科摩罗",
- "Mayotte": "马约特",
- "Reunion": "留尼旺",
- "Mauritius": "毛里求斯",
- "Saint Helena": "圣赫勒拿",
- "Saint Kitts and Nevis": "圣基茨和尼维斯",
- "Saint Lucia": "圣卢西亚",
- "Saint Pierre and Miquelon": "圣皮埃尔和密克隆",
- "Saint Vincent and the Grenadines": "圣文森特和格林纳丁斯",
- "Saint Martin": "圣马丁",
- "Saint Barthelemy": "圣巴泰勒米",
- "Saint Martin": "圣马丁",
- "Saint Barthelemy": "圣巴泰勒米",
- "Antigua and Barbuda": "安提瓜和巴布达",
- "Dominica": "多米尼克",
- "Grenada": "格林纳达",
- "Trinidad and Tobago": "特立尼达和多巴哥",
- "Bahamas": "巴哈马",
- "Cuba": "古巴",
- "Dominican Republic": "多米尼加共和国",
- "Haiti": "海地",
- "Jamaica": "牙买加",
- "Barbados": "巴巴多斯",
- "Suriname": "苏里南",
- "French Guiana": "法属圭亚那",
- "Mexico": "墨西哥",
- "Cayman Islands": "开曼群岛",
- "Bermuda": "百慕大",
- "Puerto Rico": "波多黎各",
- "Costa Rica": "哥斯达黎加",
- "Nicaragua": "尼加拉瓜",
- "El Salvador": "萨尔瓦多",
- "Honduras": "洪都拉斯",
- "Guatemala": "危地马拉",
- "Belize": "伯利兹",
- "Panama": "巴拿马",
- "Aruba": "阿鲁巴",
- "Antarctica": "南极洲",
- "Malaysia": "马来西亚",
- "Singapore": "新加坡",
- "Laos": "老挝",
- "Brunei": "文莱",
- // ...可继续补充
- };
- function convertGeoJson(filePath) {
- const geojson = JSON.parse(fs.readFileSync(filePath, 'utf8'));
- geojson.features.forEach(f => {
- const en = f.properties.name;
- if (nameMap[en]) {
- f.properties.name = nameMap[en];
- }
- });
- fs.writeFileSync(filePath, JSON.stringify(geojson, null, 2), 'utf8');
- console.log(`已处理: ${filePath}`);
- }
- convertGeoJson(path.join(__dirname, 'public/map/custom.geo.json'));
- convertGeoJson(path.join(__dirname, 'public/map/oceania.geo.json'));
- convertGeoJson(path.join(__dirname, 'public/map/africa.geo.json'));
- convertGeoJson(path.join(__dirname, 'public/map/asia.geo.json'));
- convertGeoJson(path.join(__dirname, 'public/map/europe.geo.json'));
- convertGeoJson(path.join(__dirname, 'public/map/northAmerica.geo.json'));
- convertGeoJson(path.join(__dirname, 'public/map/southAmerica.geo.json'));
|