{
  "projectHistory": {
    "title": "项目历史",
    "description": "浏览保存在本设备上的自动保存快照。",
    "empty": "暂无自动保存的快照。",
    "summary": "{{count}} 个图层 · 缩放级别 {{zoom}}",
    "restore": "恢复",
    "discard": "放弃",
    "restoreError": "无法恢复此快照。它可能已损坏，或与当前 GeoLibre 版本不兼容。",
    "recoveryTitle": "恢复未保存的工作？",
    "recoveryDescription": "GeoLibre 未正常关闭。有一份更新的“{{name}}”自动保存可用。"
  },
  "browser": {
    "title": "浏览器",
    "services": "服务",
    "recent": "最近项目",
    "databases": "数据库",
    "newDatabaseConnection": "新建数据库连接",
    "searchPlaceholder": "搜索数据源",
    "empty": "尚无已保存的服务或最近项目。",
    "emptyGroup": "空",
    "noMatches": "无匹配项。",
    "addFailed": "无法添加此数据源。",
    "builtinBadge": "内置",
    "newConnection": "新建 {{kind}} 连接",
    "loadingTables": "正在加载表…",
    "files": "文件",
    "addFolder": "添加文件夹",
    "addFolderFailed": "无法添加此文件夹。",
    "addFileFailed": "无法添加此文件。",
    "loadFolderFailed": "无法读取此文件夹。",
    "unpinFolder": "从列表中移除“{{name}}”",
    "loadingFolder": "正在加载…",
    "folderTruncated": "显示前 {{shown}} 项，共 {{total}} 项",
    "favorites": "收藏",
    "favorite": "将“{{name}}”添加到收藏",
    "unfavorite": "从收藏中移除“{{name}}”",
    "favoriteMissing": "该数据源已不存在 — 已从收藏中移除。",
    "myData": "我的数据",
    "renameLibraryLayer": "重命名“{{name}}”",
    "deleteLibraryLayer": "从“我的数据”中移除“{{name}}”",
    "desktopOnlyBadge": "桌面版",
    "importLibrary": "导入已保存的图层",
    "exportLibrary": "导出已保存的图层",
    "libraryFilterName": "图层库 JSON",
    "libraryImportFailed": "无法读取此图层库文件。",
    "libraryExportFailed": "无法导出图层库。",
    "libraryLayerMissing": "该已保存的图层已不存在。",
    "libraryLayerNeedsDesktop": "此已保存图层需要从磁盘读取文件，因此需要 GeoLibre Desktop。请重新添加该文件以保存新条目。",
    "libraryLayerConfigNotApplied": "已添加“{{name}}”的文件，但其保存的样式无法匹配到单个图层，因此未重新应用。",
    "libraryLayerJoinsUnresolved_other": "图层已添加，但有 {{count}} 个已保存的连接无法重新应用：它们所连接的图层不在此项目中。"
  },
  "about": {
    "trigger": "关于",
    "title": "关于 GeoLibre",
    "description": "GeoLibre 是一款轻量级的云原生 GIS 平台。",
    "version": "版本",
    "checkForUpdates": "检查更新",
    "tryAgain": "重试",
    "checking": "正在检查更新",
    "upToDate": "已是最新版本（{{version}}）。",
    "upToDateNoVersion": "已是最新版本。",
    "generalSectionTitle": "常规",
    "homePage": "主页",
    "githubRepository": "GitHub 仓库"
  },
  "updates": {
    "changelogTitle": "更新内容",
    "noChangelog": "暂无发行说明。请查看下载页面了解详情。",
    "stepsTitle": "如何更新",
    "download": "下载更新",
    "steps": {
      "download": "从下载页面下载适用于您平台的安装程序。",
      "install": "运行安装程序。您的本地项目、设置和 API 密钥将被保留。",
      "reopen": "重新打开 GeoLibre 以完成更新。"
    },
    "severity": {
      "major": "主要版本",
      "minor": "功能更新",
      "patch": "补丁更新"
    },
    "available": {
      "title": "{{version}} 现已推出",
      "fallback": "新版本",
      "summary": "您当前运行的是 {{current}}。"
    },
    "error": {
      "message": "无法检查更新。",
      "rateLimit": "已超出 GitHub 速率限制，请稍后重试。",
      "http": "GitHub 返回了 {{status}}。",
      "noTag": "最新发行版未包含版本标签。",
      "network": "无法连接到 GitHub。请检查您的网络连接并重试。",
      "viewDownloads": "查看下载页面",
      "viewDownloadsHint": "在浏览器中打开 GeoLibre 下载页面，以便手动检查最新版本。"
    },
    "startup": {
      "title": "有可用更新",
      "currentVersion": "当前版本",
      "latestVersion": "最新可用版本",
      "download": "下载更新包",
      "remindLater": "稍后提醒我",
      "skipVersion": "跳过此版本",
      "settingsHint": "您可以在“设置 → 更新”中更改更新检查设置。"
    }
  },
  "masBuild": {
    "unavailable": "此功能在 Mac App Store 版本的 GeoLibre Desktop 中不可用。"
  },
  "bookmark": {
    "captureStateLabel": "包含完整图层状态（激活、未激活及图层顺序）",
    "captureStateTooltip": "仅应用于您接下来保存的书签，而非全局设置。保持开启可在以后精确还原此图层排列。",
    "export": "导出",
    "exportSelected": "导出所选",
    "exportAll": "导出全部",
    "newFolder": "新建文件夹",
    "defaultFolderName": "文件夹"
  },
  "managePlugins": {
    "failed": "失败",
    "failedToLoad": "加载失败：{{message}}",
    "trust": {
      "title": "是否加载此项目中的插件？",
      "description_other": "此项目希望从您尚未安装的 URL 加载 {{count}} 个外部插件。插件运行的代码可完全访问本应用。",
      "warning": "请仅加载来自可信来源的插件。已加载的插件将以与 GeoLibre 本身相同的权限运行。",
      "trustButton": "信任并加载",
      "dismissButton": "不加载"
    },
    "title": "管理插件",
    "searchAria": "搜索插件",
    "searchPlaceholder": "搜索插件",
    "refresh": "刷新",
    "loadingRegistry": "正在加载注册表…",
    "registryEmpty": "注册表中没有列出任何插件。",
    "noPluginsHere": "此处没有插件。",
    "sectionAll": "全部（{{total}}）",
    "sectionInstalled": "已安装（{{total}}）",
    "sectionNotInstalled": "未安装（{{total}}）",
    "sectionUpgradeable": "可升级（{{total}}）",
    "sectionSettings": "设置",
    "openHomepageAria": "打开 {{name}} 的主页",
    "byAuthor": "作者：{{author}}",
    "updateAvailable": "有可用更新",
    "requiresVersion": "需要 GeoLibre {{version}}+",
    "install": "安装",
    "installAria": "安装 {{name}}",
    "removeConfirm": "移除？",
    "uninstall": "卸载",
    "uninstallAria": "卸载 {{name}}",
    "confirmUninstallAria": "确认卸载 {{name}}",
    "update": "更新",
    "updateAria": "更新 {{name}}",
    "loading": "加载中…",
    "installed": "已安装",
    "settingsIntro": "GeoLibre 始终会扫描其应用数据中的插件目录。可从文件安装打包好的插件（.zip），或添加额外的本地目录（仅桌面版）。清单 URL（包括市场安装）通过网络加载；此处的更改立即生效。",
    "installFromFile": "从文件安装",
    "chooseZip": "选择 .zip…",
    "installFromFileHintDesktop": "将打包好的插件归档复制到 GeoLibre 的插件目录。",
    "installFromFileHintWeb": "加载打包好的插件归档；它将保存在您的浏览器中，并在下次访问时重新加载。",
    "localDirectories": "本地目录",
    "directoryAria": "插件目录",
    "browseDirectoryAria": "浏览插件目录",
    "noDirectories": "未配置额外的插件目录。",
    "manifestUrls": "清单 URL",
    "manifestUrlAria": "插件清单 URL",
    "noManifestUrls": "未配置插件清单 URL。",
    "removeAria": "移除 {{name}}",
    "errorLoadRegistry": "无法加载插件注册表。",
    "errorUpdate": "无法更新插件。",
    "errorDirectoryPicker": "无法打开目录选择器。",
    "errorInstall": "无法安装该插件。",
    "errorUninstall": "无法卸载该插件。",
    "description": "浏览、安装、更新和移除外部 GeoLibre 插件。插件列于 <registryLink>GeoLibre 插件注册表</registryLink>。"
  },
  "viewState": {
    "panelTitle": "信息"
  },
  "terrainMeasure": {
    "title": "地形 (3D)",
    "surfaceDistance": "地表距离",
    "surfaceArea": "地表面积",
    "elevationGainLoss": "升降高度",
    "elevationRange": "最低 / 最高海拔",
    "meanSlope": "平均坡度",
    "computing": "正在计算地形…",
    "partialData": "部分采样点无地形数据"
  },
  "fileNamePrompt": {
    "title": "文件另存为",
    "description": "请输入文件名。文件将下载到您浏览器的下载文件夹。",
    "label": "文件名"
  },
  "newProject": {
    "basemapDescription": "选择 OpenFreeMap 或 Protomaps 底图、空白背景，或输入 MapLibre 样式 URL。",
    "basemapDescriptionNoProtomaps": "选择 OpenFreeMap 底图、空白背景，或输入 MapLibre 样式 URL。",
    "sectionOpenFreeMap": "OpenFreeMap",
    "sectionProtomaps": "Protomaps",
    "sectionOther": "其他",
    "customUrlButton": "自定义 URL",
    "invalidCustomUrl": "请输入有效的 style.json 或 .pmtiles URL。",
    "savePromptTitle": "是否保存当前项目？",
    "savePromptDescription": "当前项目有未保存的更改。是否在创建新项目前保存？",
    "doNotSave": "不保存",
    "saving": "正在保存…",
    "title": "新建项目",
    "projectName": "项目名称",
    "savedTemplates": "已保存的模板",
    "deleteTemplate": "删除模板",
    "basemapLabel": "底图",
    "create": "创建"
  },
  "basemapPicker": {
    "title": "更改底图",
    "applyCustom": "应用",
    "invalidUrl": "请输入有效的 HTTP 或 HTTPS 样式 URL。",
    "sectionMoon": "月球",
    "sectionMars": "火星",
    "sectionOther": "其他天体"
  },
  "planetSwitcher": {
    "label": "天体",
    "earth": "地球",
    "mercury": "水星",
    "venus": "金星",
    "moon": "月球",
    "mars": "火星",
    "io": "木卫一",
    "europa": "木卫二",
    "ganymede": "木卫三",
    "callisto": "木卫四",
    "titan": "土卫六",
    "pluto": "冥王星",
    "charon": "冥卫一"
  },
  "common": {
    "pickColorFromScreen": "从屏幕上拾取颜色",
    "save": "保存",
    "cancel": "取消",
    "close": "关闭",
    "retry": "重试",
    "reset": "重置",
    "remove": "移除",
    "add": "添加",
    "ok": "确定",
    "done": "完成",
    "openWebApp": "打开 GeoLibre 网页应用"
  },
  "addData": {
    "title": "添加数据",
    "kind": {
      "xyz": {
        "label": "添加 XYZ 图层",
        "description": "添加使用 x、y、z 占位符的栅格瓦片模板。"
      },
      "wms": {
        "label": "添加 WMS 图层",
        "description": "将 WMS GetMap 服务添加为瓦片栅格图层。"
      },
      "wfs": {
        "label": "添加 WFS 图层",
        "description": "通过向 GetFeature 服务请求 GeoJSON 来添加 WFS 要素。"
      },
      "wmts": {
        "label": "添加 WMTS 图层",
        "description": "将 WMTS 瓦片 URL 模板添加为栅格图层。"
      },
      "ogcVectorTiles": {
        "label": "添加 OGC 矢量瓦片",
        "description": "从 TileJSON 或瓦片模板添加 OGC API - Tiles（矢量）服务，也可从样式 URL 读取其源图层。"
      },
      "gpx": {
        "label": "添加 GPX 图层",
        "description": "将 GPX 路点、路线和轨迹添加为一个或多个矢量图层。"
      },
      "georss": {
        "label": "添加 GeoRSS 图层",
        "description": "从 URL 或文件添加 GeoRSS 订阅源（RSS、Atom 或 RDF）作为矢量图层。"
      },
      "delimitedText": {
        "label": "添加分隔文本图层",
        "description": "使用经度和纬度字段将分隔文本文件或 URL 添加为点图层，若无可用坐标，则添加为非空间属性表。"
      },
      "cad": {
        "label": "添加 CAD（DXF/DWG）图层",
        "description": "添加 AutoCAD DXF 或 DWG 图纸作为矢量图层，可选择要加载的图层及用于投影的坐标参考系。"
      },
      "gdb": {
        "label": "添加文件地理数据库图层",
        "description": "从 Esri 文件地理数据库（.gdb 文件夹）添加图层。图层通过本地 GeoLibre 服务器读取并重投影至 WGS84。"
      },
      "photos": {
        "label": "添加带地理标记的照片",
        "description": "根据 EXIF GPS 位置，将 JPEG/HEIC 照片作为点图层导入。"
      },
      "mbtiles": {
        "label": "添加 MBTiles 图层",
        "description": "将本地 MBTiles 文件添加为栅格或矢量瓦片图层。"
      },
      "arcgis": {
        "label": "添加 ArcGIS 图层",
        "description": "添加 ArcGIS FeatureServer、VectorTileServer、MapServer 或 ImageServer 图层，或门户项目。"
      },
      "postgres": {
        "label": "添加 PostgreSQL 图层",
        "description": "在本地启动 Martin，发现 PostGIS 数据源，并以矢量瓦片形式添加数据源。"
      },
      "deckglViz": {
        "label": "添加 Deck.gl 图层",
        "description": "选择一种 deck.gl 图层类型，然后加载示例数据或上传 CSV/JSON/GeoJSON 文件或 URL。"
      },
      "video": {
        "label": "添加视频图层",
        "description": "通过提供 MP4 URL 和四个角点坐标，添加已地理配准的视频叠加层。"
      },
      "ogcFeatures": {
        "label": "添加 OGC API - Features 图层",
        "description": "将 OGC API - Features 集合中的要素作为矢量图层添加，并沿服务的分页链接持续读取，直到加载完所请求的要素数量。"
      }
    },
    "shared": {
      "layerName": "图层名称",
      "insertBelow": "插入到下方",
      "insertTop": "图层列表顶部（默认）",
      "layersGroup": "图层",
      "basemapLayersGroup": "底图图层",
      "showBasemapLayers": "显示底图图层（高级）",
      "addLayer": "添加图层",
      "adding": "正在添加…",
      "addError": "无法添加图层。",
      "sampleData": "示例数据",
      "loadSampleData": "加载示例数据…"
    },
    "common": {
      "serviceUrl": "服务 URL",
      "tileSize": "瓦片大小",
      "tileUrlTemplate": "瓦片 URL 模板",
      "sourceType": "数据源类型",
      "layerType": "图层类型",
      "format": "格式",
      "optional": "可选",
      "chooseFile": "选择文件",
      "noFileSelected": "未选择文件",
      "loading": "正在加载...",
      "workspaceLayerPlaceholder": "workspace:layer",
      "requestFailed": "请求失败，状态码为 {{status}}",
      "networkFailure": "无法访问服务。请检查主机是否可达，以及其 TLS 证书、防火墙和代理设置是否允许请求；在浏览器中可能被 CORS 阻止，请尝试桌面应用。",
      "requestTimedOut": "请求超时。主机可能响应缓慢、不可达，或被防火墙/代理阻止。"
    },
    "serviceLibrary": {
      "title": "已保存的服务",
      "saveCurrent": "保存当前设置",
      "importLibrary": "从 JSON 导入库",
      "exportLibrary": "导出库为 JSON",
      "loadAria": "加载已保存的服务",
      "loadPlaceholder": "加载已保存的服务…",
      "builtin": "{{name}}（内置）",
      "deleteAria": "删除已保存的服务",
      "empty": "尚无已保存的服务 — 填写表单并选择“保存当前设置”。",
      "name": "名称",
      "category": "分类",
      "categoryPlaceholder": "可选（例如国家、主题）",
      "uncategorized": "未分类",
      "errorName": "请为已保存的服务输入名称。",
      "saved": "已将“{{name}}”保存到服务库。",
      "removed": "已移除“{{name}}”。",
      "errorExport": "无法导出库。",
      "errorTooLarge": "文件过大，无法导入（最大 5 MB）。",
      "errorNoServices": "在该文件中未找到有效的服务。",
      "errorRead": "无法将该文件作为服务库读取。",
      "imported_other": "已导入 {{count}} 个服务。",
      "importedWithDropped_other": "已导入 {{count}} 个服务（{{dropped}} 个因库已满而跳过）。"
    },
    "xyz": {
      "defaultName": "XYZ 图层",
      "sampleLabel": "USGS 影像",
      "errorUrl": "请输入 XYZ 瓦片 URL 模板。",
      "urlPlaceholder": "https://example.com/{z}/{x}/{y}.png",
      "shortUrlPlaceholder": "https://go.example.com/layer",
      "shortUrl": "短链接"
    },
    "wms": {
      "defaultName": "WMS 图层",
      "sampleLabel": "USGS NAIP 影像",
      "sampleLabelGebco": "GEBCO 海洋测深",
      "errorUrl": "请输入 WMS 服务 URL。",
      "errorLayers": "请输入一个或多个 WMS 图层名称。",
      "urlPlaceholder": "https://example.com/geoserver/wms",
      "layers": "图层",
      "styles": "样式",
      "transparent": "透明背景",
      "retrieveLayers": "获取图层",
      "retrieving": "正在获取...",
      "retrievedLayers": "已获取图层",
      "selectLayer_other": "从 {{count}} 个图层中选择",
      "noLayersFound": "未在该服务中找到任何图层。",
      "retrieveError": "无法从该服务获取图层。",
      "version": "WMS 版本"
    },
    "wfs": {
      "defaultName": "WFS 图层",
      "sampleLabel": "美国各州（GeoServer）",
      "errorUrl": "请输入 WFS 服务 URL。",
      "errorTypeName": "请输入 WFS 要素类型名称。",
      "errorOutputFormat": "请输入 WFS 输出格式。",
      "urlPlaceholder": "https://example.com/geoserver/wfs",
      "featureType": "要素类型",
      "version": "版本",
      "outputFormat": "输出格式",
      "srsName": "SRS 名称",
      "maxFeatures": "最大要素数",
      "errorMaxFeaturesNumeric": "请输入数字形式的最大要素数。",
      "retrieveTypes": "获取类型",
      "retrieving": "正在获取...",
      "retrievedTypes": "已获取要素类型",
      "selectType_other": "从 {{count}} 个要素类型中选择",
      "noTypesFound": "未在该服务中找到任何要素类型。",
      "retrieveError": "无法从该服务获取要素类型。"
    },
    "wmts": {
      "defaultName": "WMTS 图层",
      "sampleLabel": "EOX 世界影像（Sentinel-2）",
      "errorUrl": "请输入 WMTS 瓦片 URL 模板。",
      "urlPlaceholder": "https://example.com/wmts/{z}/{y}/{x}.png"
    },
    "ogcVectorTiles": {
      "defaultName": "OGC 矢量瓦片图层",
      "tilesUrl": "瓦片 URL",
      "tilesUrlPlaceholder": "https://example.com/tiles/WebMercatorQuad?f=tilejson",
      "tilesUrlHint": "TileJSON 元数据 URL 或 {z}/{y}/{x} MVT 瓦片模板。",
      "styleUrl": "样式 URL",
      "styleUrlPlaceholder": "https://example.com/styles/default?f=mapbox",
      "styleUrlHint": "可选的 Mapbox/MapLibre 样式 JSON。当 TileJSON 未包含源图层信息时，用于发现该瓦片集的源图层。",
      "sourceLayers": "源图层",
      "sourceLayersPlaceholder": "layer_a, layer_b",
      "sourceLayersHint": "可选，以逗号分隔的源图层名称。将覆盖从 TileJSON 或样式中找到的图层。",
      "sampleLabel": "PDOK BGT（荷兰）",
      "errorUrl": "请输入瓦片 URL 或样式 URL。",
      "errorNoTiles": "无法确定矢量瓦片端点。请输入 TileJSON URL、瓦片模板或样式 URL。",
      "errorNoLayers": "无法确定矢量瓦片的源图层。请添加样式 URL 或输入源图层名称。"
    },
    "arcgis": {
      "defaultName": "ArcGIS 图层",
      "sampleFeatureLabel": "美国主要城市（要素）",
      "sampleVectorTileLabel": "圣莫尼卡地块（矢量瓦片）",
      "sampleMapServiceLabel": "美国行政边界（地图服务）",
      "sampleImageServiceLabel": "USGS 3DEP 山体阴影（影像服务）",
      "featureLayer": "要素图层",
      "vectorTileLayer": "矢量瓦片图层",
      "mapServiceLayer": "地图服务",
      "imageServiceLayer": "影像服务",
      "portalItemId": "门户项目 ID",
      "featureUrlPlaceholder": "https://services.arcgis.com/.../FeatureServer/0",
      "vectorTileUrlPlaceholder": "https://.../arcgis/rest/services/.../VectorTileServer",
      "mapServiceUrlPlaceholder": "https://.../arcgis/rest/services/.../MapServer",
      "imageServiceUrlPlaceholder": "https://.../arcgis/rest/services/.../ImageServer",
      "sublayers": "子图层",
      "sublayersPlaceholder": "所有可见子图层",
      "sublayersHint": "可选的子图层 ID，以逗号分隔，例如 0,2,5。选择子图层后将动态绘制该服务，而不使用其缓存切片。",
      "renderingRule": "渲染规则",
      "renderingRulePlaceholder": "{\"rasterFunction\":\"Hillshade\"}",
      "renderingRuleHint": "可选的栅格函数 JSON，由服务端应用。设置渲染规则后将动态绘制该服务，而不使用其缓存切片。",
      "portalUrl": "门户 URL",
      "portalUrlPlaceholder": "https://www.arcgis.com/sharing/rest",
      "accessToken": "访问令牌"
    },
    "gpx": {
      "defaultName": "GPX 图层",
      "sampleLabel": "Fells Loop 步道",
      "errorFileMissing": "缺少 GPX 文件数据。",
      "readError": "无法读取 GPX 文件。",
      "errorChooseFile": "请选择一个 GPX 文件。",
      "errorUrl": "请输入 GPX URL。",
      "errorSelectType": "请至少选择一种 GPX 图层类型。",
      "errorNotFound": "未找到所选的 GPX 图层类型。",
      "waypoints": "路点",
      "tracks": "轨迹",
      "trackPoints": "轨迹点",
      "routes": "路线",
      "routePoints": "路线点",
      "url": "GPX URL",
      "file": "GPX 文件",
      "urlPlaceholder": "https://example.com/route.gpx",
      "layerTypes": "图层类型"
    },
    "georss": {
      "defaultName": "GeoRSS 图层",
      "sampleLabel": "USGS 地震（过去一天）",
      "errorFileMissing": "缺少 GeoRSS 文件数据。",
      "readError": "无法读取 GeoRSS 文件。",
      "errorChooseFile": "请选择一个 GeoRSS 文件。",
      "errorUrl": "请输入 GeoRSS URL。",
      "url": "GeoRSS URL",
      "file": "GeoRSS 文件",
      "urlPlaceholder": "https://example.com/feed.atom"
    },
    "cad": {
      "defaultName": "CAD 图层",
      "fileFilter": "CAD（DXF/DWG）",
      "layer": "CAD 图层",
      "layerPlaceholder": "请先选择一个 CAD 文件",
      "readingLayers": "正在读取图层...",
      "layerOption": "{{name}}（{{type}}，{{count}} 个要素）",
      "crs": "源坐标参考系",
      "crsPlaceholder": "例如 EPSG:26915",
      "crsPresetLabel": "常用坐标系...",
      "crsHelp": "如果图纸已经使用经纬度坐标（WGS84），请留空。否则请输入图纸坐标系的 EPSG 代码以便重投影。",
      "readError": "无法读取此 CAD 文件。",
      "errorNoLayers": "在此 CAD 文件中未找到任何图层。",
      "errorChooseFile": "请先选择一个 CAD（DXF/DWG）文件。",
      "errorNoLayer": "请选择要加载的 CAD 图层。",
      "errorUnsupportedGeometry": "此 CAD 图层包含无法显示的混合或集合几何。请尝试其他图层。"
    },
    "gdb": {
      "defaultName": "地理数据库图层",
      "chooseFolder": "选择 .gdb 文件夹...",
      "noFolderSelected": "未选择地理数据库",
      "layer": "要素类",
      "layerPlaceholder": "请先选择地理数据库",
      "readingLayers": "正在读取图层...",
      "layerOption": "{{name}}（{{type}}，{{count}} 个要素）",
      "help": "仅含属性的表不会列出。所选要素类通过本地 GeoLibre 服务器加载并重投影至 WGS84。",
      "desktopOnly": "文件地理数据库图层仅在 GeoLibre 桌面版中可用。此功能需要通过本地 GeoLibre 服务器读取本地 .gdb 文件夹，而网页应用无法访问。",
      "readError": "无法读取此文件地理数据库。",
      "convertError": "无法加载此要素类。",
      "errorNotGdb": "请选择以 .gdb 结尾的文件夹（Esri 文件地理数据库）。",
      "errorNoLayers": "在此地理数据库中未找到包含几何的要素类。",
      "errorChooseFolder": "请先选择一个 .gdb 文件夹。",
      "errorNoLayer": "请选择要加载的要素类。",
      "errorTimeout": "读取地理数据库超时。",
      "crs": "源坐标系",
      "crsPlaceholder": "例如 EPSG:26915",
      "crsHelp": "无法检测此要素类的坐标系。请输入其存储时使用的 EPSG（或 ESRI）代码，以便重投影至 WGS84。",
      "errorMissingCrs": "无法检测此要素类的坐标系。请输入其源坐标系后再添加。"
    },
    "delimitedText": {
      "defaultName": "分隔文本图层",
      "sampleLabel": "美国城市",
      "errorChooseFile": "请选择一个分隔文本文件。",
      "errorUrl": "请输入分隔文本 URL。",
      "errorFileMissing": "缺少分隔文本文件数据。",
      "readError": "无法读取分隔文本文件。",
      "errorDataMissing": "缺少分隔文本数据。",
      "retrievedColumns_other": "已获取 {{count}} 个字段。",
      "retrievedColumnsTable_other": "已获取 {{count}} 个字段。未检测到坐标字段；将作为属性表添加。",
      "errorRetrieveColumns": "无法获取字段名称。",
      "url": "分隔文本 URL",
      "file": "分隔文本文件",
      "urlPlaceholder": "https://example.com/data.csv",
      "retrieving": "正在获取...",
      "retrieveColumns": "获取字段",
      "delimiter": "分隔符",
      "delimiterComma": "逗号",
      "delimiterTab": "制表符",
      "delimiterSemicolon": "分号",
      "delimiterPipe": "竖线",
      "delimiterCustom": "自定义",
      "customDelimiter": "自定义分隔符",
      "longitudeField": "经度字段",
      "latitudeField": "纬度字段",
      "noneField": "无（属性表）",
      "tableHint": "将两个坐标字段都保留为“无”，可将该文件作为非空间属性表添加（用于属性连接）。",
      "crs": "坐标系",
      "crsPlaceholder": "例如 EPSG:32643",
      "crsPresetLabel": "常用坐标系...",
      "crsHelp": "如果坐标已经是经纬度（WGS84），请留空。否则请输入坐标列所用的 EPSG 代码，点将被重投影到 WGS84。对于投影坐标系，经度和纬度字段用于选择 X（东坐标）和 Y（北坐标）列。",
      "importMode": "导入方式",
      "modeCoordinates": "坐标",
      "modeAddresses": "地址（地理编码）",
      "addressColumns": "地址列",
      "addressColumnsEmptyHint": "请先获取列，然后再选择地址列。",
      "addressColumnsHint": "选择一列或多列，拼接成发送给地理编码服务的地址（例如街道、城市、省份）。",
      "errorNoAddressColumns": "请至少选择一个地址列。",
      "errorNoAddressesFound": "所选地址列中没有任何一行含有值。"
    },
    "photos": {
      "defaultName": "照片",
      "chooseLabel": "照片",
      "choosePhotos": "选择照片",
      "hint": "选择 JPEG、PNG、TIFF 或 HEIC 照片。每张照片会根据其 EXIF GPS 位置放置。HEIC 照片会被定位，但不显示缩略图。",
      "readError": "无法读取所选照片。",
      "errorChooseFiles": "请选择一张或多张照片。",
      "selectedCount_other": "已选择 {{count}} 张照片",
      "errorNoGps_other": "在所选的 {{count}} 张照片中未找到 GPS 位置。",
      "addedSummary_other": "已添加 {{count}} 张带地理标记的照片。",
      "skippedNote_other": "已跳过 {{count}} 张照片（无 GPS 位置）。",
      "noThumbnailNote_other": "{{count}} 张照片没有缩略图（HEIC 或不支持的格式）。",
      "manualPromptTitle": "在此照片中未找到 GPS 位置。",
      "manualPromptBody": "请将其放置在当前地图中心，然后拖动到地图上的正确位置。",
      "manualPromptCenter": "地图中心：{{lng}}, {{lat}}",
      "manualPlace": "放置在地图中心",
      "manualHint": "拖动此图钉以定位照片，然后点击“完成”。"
    },
    "mbtiles": {
      "defaultName": "MBTiles 图层",
      "readError": "无法读取 MBTiles 文件。",
      "errorChooseFile": "请选择一个 MBTiles 文件。",
      "errorSourceLayers": "请至少输入一个矢量源图层。",
      "tileType": "瓦片类型",
      "sourceLayers": "源图层",
      "sourceLayersPlaceholder": "building, place, water"
    },
    "postgres": {
      "defaultName": "PostgreSQL 图层",
      "errorDesktopOnly": "PostgreSQL 图层需要使用 GeoLibre 桌面版。",
      "errorConnectionString": "请输入 PostgreSQL 连接字符串。",
      "statusCheckingBinary": "正在检查 Martin 可执行文件...",
      "statusDownloaded": "Martin 已下载完成。正在启动本地服务器...",
      "statusStarting": "正在启动本地 Martin 服务器...",
      "statusReadingCatalog": "正在读取 Martin 目录...",
      "statusFound_other": "已找到 {{count}} 个数据源。",
      "statusNoSources": "Martin 正在运行，但未找到兼容的 PostGIS 数据源。",
      "errorConnect": "无法连接到 PostgreSQL。",
      "statusStopped": "Martin 已停止。",
      "errorStop": "无法停止 Martin。",
      "errorConnectFirst": "请先连接到 PostgreSQL。",
      "errorNoVectorLayers": "所选的 Martin 数据源没有矢量图层。",
      "errorSelectSource": "请选择要添加的 Martin 数据源。",
      "desktopOnlyNotice": "PostgreSQL 图层仅在 GeoLibre 桌面版中可用。此功能需要运行本地 Martin 瓦片服务器，而网页应用无法启动它。",
      "savedConnection": "已保存的连接",
      "selectSavedConnection": "选择已保存的连接",
      "connectionString": "PostgreSQL 连接字符串",
      "connectionStringPlaceholder": "postgres://user:password@host:5432/database",
      "defaultSrid": "默认 SRID",
      "connect": "连接",
      "stop": "停止",
      "martinSource": "Martin 数据源",
      "runningOnPort": "Martin 正在端口 {{port}} 上运行。",
      "loadMode": "加载方式",
      "loadModeTiles": "矢量瓦片（Martin，只读）",
      "loadModeEditable": "可编辑图层（加载全部要素）",
      "editableNotice": "通过本地处理服务器加载表中的要素，以便对其进行编辑。使用图层的“保存编辑到 PostGIS 表”操作将更改保存回数据库。",
      "statusListingTables": "正在读取空间表...",
      "statusTablesFound_other": "已找到 {{count}} 个空间表。",
      "statusNoTables": "在此数据库中未找到任何空间表。",
      "editableTable": "表",
      "tableReadOnly": "{{table}}（只读：无主键）",
      "errorSelectTable": "请选择要加载的表。",
      "errorRuntimeMissing": "处理服务器未安装 PostGIS 运行时（psycopg）。请安装 geolibre-server 的 “postgis” 扩展以加载可编辑图层。"
    },
    "video": {
      "defaultName": "视频图层",
      "sampleLabel": "旧金山附近的海浪",
      "errorUrl": "请输入视频 URL。",
      "errorHttps": "视频 URL 必须以 https:// 开头。",
      "cornerTopLeft": "左上",
      "cornerTopRight": "右上",
      "cornerBottomRight": "右下",
      "cornerBottomLeft": "左下",
      "errorCornerFormat": "请以“经度, 纬度”格式输入{{corner}}角坐标。",
      "errorCornerNumber": "请输入数字形式的{{corner}}角经纬度。",
      "errorCornerLng": "{{corner}}角经度必须介于 -180 到 180 之间。",
      "errorCornerLat": "{{corner}}角纬度必须介于 -90 到 90 之间。",
      "primaryUrl": "主视频 URL",
      "primaryUrlPlaceholder": "https://example.com/clip.mp4",
      "fallbackUrl": "备用视频 URL（可选）",
      "fallbackUrlPlaceholder": "https://example.com/clip.webm",
      "topLeft": "左上角（经度, 纬度）",
      "topRight": "右上角（经度, 纬度）",
      "bottomRight": "右下角（经度, 纬度）",
      "bottomLeft": "左下角（经度, 纬度）",
      "cornersNote": "这四个角点用于在地图上对视频进行地理配准。视频必须通过 HTTPS 提供，且主机必须允许跨域请求（CORS），画面才能正常渲染。"
    },
    "netcdf": {
      "sampleLabel": "气温",
      "title": "添加 NetCDF / HDF",
      "description": "渲染 NetCDF 或 HDF5 数据集：可以是通过 kerchunk 引用（使用 HTTP 范围请求读取）访问的远程云优化文件，也可以是在浏览器中读取的本地 NetCDF 或 HDF5 文件。",
      "sourceLabel": "数据源",
      "sourceCloud": "云优化（kerchunk URL）",
      "sourceLocal": "本地文件（NetCDF / HDF5）",
      "localFileLabel": "本地文件",
      "chooseDifferentFile": "选择其他文件",
      "readingFile": "正在读取...",
      "readingRemote": "正在通过 HTTP 读取文件的元数据...",
      "localFileHelp": "选择一个本地 NetCDF 或 HDF5 文件（.nc、.nc4、.cdf、.h5 或 .hdf5）；支持经典 NetCDF-3 和 NetCDF-4/HDF5。文件在您的浏览器中解码；较大的文件会占用更多内存。",
      "errorNoVariables": "在该文件中未找到可渲染的（二维或更高维）变量。",
      "errorNoFile": "尚未加载文件。",
      "kerchunkUrlLabel": "Kerchunk 引用 URL",
      "kerchunkUrlHelp": "请在上方选择示例数据集，或粘贴您自己的 kerchunk 引用 URL，然后点击“加载变量”。",
      "loading": "加载中...",
      "loadVariables": "加载变量",
      "variableLabel": "变量",
      "dimIndexLabel": "{{dim}} 索引",
      "colormapLabel": "色彩映射",
      "bandCombinationLabel": "波段组合",
      "bandCombinationHelp": "单波段按色彩映射绘制；RGB 合成将该变量的三个波段分别作为红、绿、蓝通道绘制，每个通道各自按 2-98% 范围拉伸。",
      "modeSingleBand": "单波段（色彩映射）",
      "modeRgb": "RGB 合成（三个波段）",
      "colorMin": "颜色最小值（可选）",
      "colorMax": "颜色最大值（可选）",
      "adding": "正在添加...",
      "addLayer": "添加图层",
      "channel": {
        "red": "红色波段",
        "green": "绿色波段",
        "blue": "蓝色波段"
      }
    },
    "deckViz": {
      "defaultName": "Deck.gl 图层",
      "errorChooseFile": "请选择一个 CSV、JSON 或 GeoJSON 文件。",
      "errorUrl": "请输入数据 URL。",
      "errorUnknownType": "未知的图层类型。",
      "needsGeojson": "{{label}} 需要 GeoJSON 文件。",
      "needsTabular": "{{label}} 需要表格化的 CSV/JSON 数据，而非 GeoJSON。",
      "mapRequiredFields_other": "请映射所需字段：{{fields}}。",
      "errorExample": "无法加载示例数据。",
      "loadedFeatures_other": "已加载 {{count}} 个要素。",
      "loadedRows_other": "{{count}} 行",
      "loadedColumns_other": "{{count}} 列",
      "loadedTabular": "已加载 {{rows}} · {{columns}}。",
      "errorLoad": "无法加载数据。",
      "errorLoadFirst": "请先加载示例数据，或文件/URL。",
      "useExample": "使用示例数据",
      "loadYourOwn": "或加载您自己的数据",
      "dataUrl": "数据 URL",
      "localFile": "本地文件",
      "urlPlaceholder": "https://example.com/data.csv",
      "chooseFileLoad": "选择文件并加载",
      "loadData": "加载数据",
      "selectRole": "— 选择 —",
      "roleNone": "（无）",
      "closeAfterAdd": "添加图层后关闭对话框",
      "color": "颜色",
      "pointSize": "点大小",
      "cellSize": "单元格大小",
      "lineWidth": "线宽",
      "extrusion": "3D 拉伸",
      "modelUrlPlaceholder": "https://example.com/model.glb"
    },
    "ogcFeatures": {
      "defaultName": "OGC API - Features 图层",
      "sampleLabel": "全球湖泊（pygeoapi 演示）",
      "urlPlaceholder": "https://example.com/ogcapi",
      "urlHint": "服务的着陆页，或从中复制的任意 URL（/collections 或 /collections/{id}/items 形式的 URL 同样可用）。",
      "retrieveCollections": "获取集合",
      "retrieving": "正在获取...",
      "retrievedCollections": "已获取的集合",
      "selectCollection_other": "从 {{count}} 个集合中选择",
      "noCollectionsFound": "未找到此服务的要素集合。",
      "retrieveError": "无法从此服务获取集合。",
      "collection": "集合",
      "collectionPlaceholder": "collection-id",
      "maxFeatures": "最大要素数",
      "bbox": "边界框",
      "datetime": "日期和时间",
      "errorCollection": "请输入 OGC API - Features 集合 id。",
      "errorMaxFeatures": "请输入不小于 1 的最大要素数。",
      "errorBbox": "请按“西,南,东,北”的格式输入边界框。",
      "errorNoFeatures": "此集合未返回任何要素。"
    },
    "nonGeographicCoordinates": "{{names}} 中的坐标不是经纬度，因此地图上不会绘制任何内容。坐标参考系标注有误 — 请重新投影数据（或修正 .prj）后再次加载。"
  },
  "offline": {
    "title": "下载离线区域",
    "description": "保存当前地图视图的底图瓦片，使该区域在无网络连接时也能正常使用。",
    "noServiceWorker": "离线缓存需要已安装的网页应用。您在此下载的瓦片在此构建版本中不会保存以供离线使用。",
    "uncacheable": "以下底图数据源不支持离线下载，将不会出现在您的离线地图中：{{hosts}}。",
    "cacheable": "以下底图数据源将被下载并可离线使用：{{hosts}}。",
    "includeExtra": "包含用于放大查看的额外细节级别",
    "currentViewOnly": "仅当前视图 · 缩放级别 {{zoom}}",
    "detailLevels": "额外细节级别",
    "relativeLevels_other": "+{{count}} 个级别 · 缩放级别 {{min}}–{{max}}",
    "tiles": "待下载的资源",
    "tooManyTiles": "该区域超出了离线缓存限制（{{max}} 个资源）；随着新资源的下载，最旧的缓存瓦片可能会被清除。请减少细节级别或选择更小的区域。",
    "acknowledgeEviction": "仍然下载，如有需要将清除旧瓦片",
    "download": "下载",
    "cancel": "取消",
    "progress": "正在下载 {{done}} / {{total}}…",
    "complete_other": "离线区域已保存。已缓存 {{count}} 个资源以供离线使用。",
    "completeWithFailures": "已保存 {{done}} / {{total}} 个资源（{{failed}} 个失败）。",
    "retryFailed_other": "重试 {{count}} 个失败的资源",
    "retryAll": "重试所有资源",
    "advanced": "高级选项",
    "concurrency": "并发请求数",
    "concurrencyHint": "降低此值可减轻对限制快速瓦片请求速率的服务器的压力。",
    "timeout": "请求超时（秒）",
    "timeoutHint": "每个瓦片请求在计为失败前最多等待 {{seconds}} 秒。",
    "timeoutDisabled": "无超时限制 — 请求使用浏览器默认设置。对于较慢的网络连接，请提高此值。"
  },
  "offlineManager": {
    "title": "管理离线区域",
    "description": "查看您已下载以供离线使用的底图区域，刷新它们，或删除它们以回收存储空间。",
    "noServiceWorker": "离线缓存需要已安装的网页应用。在此构建版本中，刷新区域不会保存瓦片以供离线使用。",
    "empty": "尚无离线区域。使用“下载离线区域”保存当前地图视图以供离线使用。",
    "zoomRange": "缩放级别 {{min}}–{{max}}",
    "tilesCount_other": "{{count}} 个瓦片",
    "savedOn": "保存于 {{date}}",
    "rename": "重命名此区域",
    "nameLabel": "区域名称",
    "update": "刷新此区域",
    "delete": "删除此区域",
    "confirmDelete": "删除",
    "updateAll": "全部刷新",
    "updating": "正在刷新 {{done}} / {{total}}…",
    "totalFootprint_other": "共 {{size}}，跨 {{count}} 个区域",
    "deviceUsage": "已使用 {{usage}} / {{quota}}"
  },
  "recordTour": {
    "title": "录制地图导览",
    "hint": "平移和缩放地图，然后捕获每个视图。此面板打开时地图仍可交互。",
    "unsupported": "此浏览器无法录制地图画布。请尝试最新版本的 Chrome、Edge 或 Firefox。",
    "addView": "添加当前视图",
    "pathTitle": "从路径生成",
    "pathNoLayers": "添加 LineString 图层以从路径生成关键帧。",
    "pathLayer": "路径图层",
    "pathLayerOption": "{{name}}（{{count}} 个点）",
    "pathKeyframes": "关键帧",
    "pathZoom": "缩放",
    "pathPitch": "俯仰角",
    "pathHold": "停留",
    "pathTransition": "移动",
    "pathGenerate": "生成",
    "pathConfirmReplace": "是否用从此路径生成的关键帧替换当前关键帧？",
    "pathGenerated_other": "已从路径生成 {{count}} 个关键帧。",
    "pathGenerateError": "无法从此路径生成关键帧。",
    "loadConfig": "加载配置",
    "saveConfig": "保存配置",
    "confirmLoad": "是否用已加载的配置替换当前关键帧？",
    "configFileType": "导览配置",
    "configSaved": "已将配置保存为 {{name}}",
    "configLoaded_other": "已加载配置，共 {{count}} 个关键帧。",
    "configSaveError": "无法保存导览配置。请重试。",
    "configLoadError": "无法加载导览配置。该文件可能无效。",
    "keyframeCount_other": "{{count}} 个关键帧",
    "empty": "将地图平移和缩放到起始视图，然后将其添加为第一个关键帧。至少添加两个关键帧才能录制导览。",
    "flyToKeyframe": "飞至此视图",
    "hold": "停留",
    "transition": "过渡",
    "secondsShort": "秒",
    "holdSeconds": "在此视图停留的秒数",
    "segmentSeconds": "移动到下一视图所用的秒数",
    "resizeLeft": "从左下角调整面板大小",
    "resizeRight": "从右下角调整面板大小",
    "recapture": "更新为当前地图视图",
    "moveUp": "上移关键帧",
    "moveDown": "下移关键帧",
    "removeKeyframe": "移除关键帧",
    "fps": "每秒帧数",
    "estimatedLength": "约 {{seconds}} 秒",
    "record": "录制",
    "videoFileType": "WebM 视频",
    "recordingStatus": "正在录制… {{percent}}%",
    "savingStatus": "正在保存视频…",
    "stop": "停止",
    "recordingReady": "录制已完成。为其命名并保存，或放弃后重新录制。",
    "fileNameLabel": "文件名",
    "saveVideo": "保存视频…",
    "discard": "放弃",
    "saved": "已保存 {{name}}",
    "saveCancelled": "保存已取消。",
    "recordError": "无法录制导览。请重试。",
    "saveError": "无法保存视频。请重试。"
  },
  "recordVideo": {
    "title": "录制视频",
    "hint": "将实时地图录制为视频。录制过程中可平移和缩放 — 每次移动都会被捕获。此面板和选择框不会出现在视频中。",
    "unsupported": "此浏览器无法录制地图画布。请尝试最新版本的 Chrome、Edge 或 Firefox。",
    "area": "捕获区域",
    "wholeMap": "整个地图",
    "selectArea": "选择区域…",
    "redrawArea": "重新绘制区域…",
    "drawHint": "在地图上拖动一个矩形以设置录制区域，或按 Esc 取消。",
    "regionChosen": "录制区域：{{width}} × {{height}} 像素。地图在框下移动时，该框保持固定。",
    "noRegion": "在地图上绘制一个矩形以选择录制区域。",
    "needRegion": "请先在地图上选择一个区域。",
    "fps": "每秒帧数",
    "caption": "字幕（烧录到视频中）",
    "captionTitlePlaceholder": "标题（可选）",
    "captionTextLabel": "字幕副标题或数据来源",
    "captionTextPlaceholder": "副标题或数据来源（可选）",
    "captionPosition": "字幕位置",
    "captionPos": {
      "top-left": "左上",
      "top-center": "顶部居中",
      "top-right": "右上",
      "bottom-left": "左下",
      "bottom-center": "底部居中",
      "bottom-right": "右下"
    },
    "includePanels": "在视频中包含地图面板（图例、色带、HTML）",
    "record": "录制",
    "preparing": "正在准备…",
    "stop": "停止",
    "savingStatus": "正在保存视频…",
    "recordingReady": "录制已完成。为其命名并保存，或放弃后重新录制。",
    "fileNameLabel": "文件名",
    "saveVideo": "保存视频…",
    "discard": "放弃",
    "videoFileType": "视频",
    "saved": "已保存 {{name}}",
    "saveCancelled": "保存已取消。",
    "recordError": "无法录制视频。请重试。",
    "saveError": "无法保存视频。请重试。"
  },
  "fieldCollection": {
    "title": "野外采集",
    "description": "根据自定义表单采集点、线或面观测数据。通过 GPS 或点击地图放置点，并逐个顶点绘制线和面。",
    "captureDescription": "通过 GPS 或在地图上采集位置，然后填写表单以保存。",
    "captureReviewDescription": "查看已采集的位置，填写表单，并将其保存到图层。",
    "reopen": "打开野外采集",
    "targetLayer": "采集图层",
    "newLayer": "新建采集图层…",
    "layerName": "图层名称",
    "layerNamePlaceholder": "野外观测",
    "geometry": "几何类型",
    "geom": {
      "point": "点",
      "line": "线",
      "polygon": "面"
    },
    "fields": "表单字段",
    "addField": "添加字段",
    "fieldLabel": "标签",
    "fieldType": "类型",
    "options": "选项（以逗号分隔）",
    "required": "必填",
    "noFields": "尚无字段。添加字段以采集属性，或创建仅采集位置的图层。",
    "type": {
      "text": "文本",
      "number": "数字",
      "date": "日期",
      "choice": "选项"
    },
    "createLayer": "创建图层",
    "captureHint": "使用 GPS 或在地图上选点以开始采集。",
    "drawHint": "在地图上绘制形状以开始采集。",
    "useGps": "使用 GPS",
    "pickOnMap": "在地图上选点",
    "reposition": "重新定位点",
    "drawOnMap": "在地图上绘制",
    "pickBannerTitle": "放置模式已激活",
    "pickBannerHint": "点击地图上的任意位置以选取点，或按 Esc 取消。",
    "addGpsVertex": "添加 GPS 顶点",
    "undo": "撤销",
    "finish": "完成",
    "vertices_other": "{{count}} 个顶点",
    "needMore": "请至少添加 {{min}} 个顶点",
    "dblClickHint": "点击以添加顶点；双击以完成。",
    "locating": "正在定位…",
    "photo": "照片",
    "photoOptional": "照片（可选）",
    "choosePhoto": "选择照片…",
    "removePhoto": "移除",
    "save": {
      "point": "保存点",
      "line": "保存线",
      "polygon": "保存面"
    },
    "saved": {
      "point_other": "已将 {{count}} 个点保存到 {{layer}}。",
      "line_other": "已将 {{count}} 条线保存到 {{layer}}。",
      "polygon_other": "已将 {{count}} 个面保存到 {{layer}}。"
    },
    "layerGone": "采集图层已不再可用。",
    "noGeolocation": "此设备不支持地理定位。",
    "geolocationDenied": "无法获取您的位置。请检查位置权限后重试。",
    "photoTooLarge": "该照片过大（最大 {{max}}）。请选择更小的图像。",
    "photoReadError": "无法读取该图像。请尝试其他文件。",
    "errorRequired": "此字段为必填项。",
    "errorNumber": "请输入有效的数字。",
    "errorChoice": "请从列出的选项中选择一项。"
  },
  "gps": {
    "title": "GPS 跟踪",
    "description": "将您的设备位置实时显示在地图上，记录轨迹日志，并在当前位置采集点。",
    "start": "启动 GPS",
    "stop": "停止 GPS",
    "follow": "使地图保持以我的位置为中心",
    "waitingForFix": "正在等待 GPS 定位…",
    "noGeolocation": "此设备不支持地理定位。",
    "permissionDenied": "位置权限被拒绝。请在浏览器或系统设置中启用后重试。",
    "trackLog": "轨迹日志",
    "record": "记录轨迹",
    "pause": "暂停",
    "resume": "继续",
    "discard": "放弃",
    "saveTrack": "保存为图层",
    "exportGpx": "导出 GPX",
    "exportGeojson": "导出 GeoJSON",
    "points_other": "{{count}} 个点",
    "trackLayerName": "GPS 轨迹",
    "trackSaved": "已将 {{name}} 保存为图层。",
    "trackExported": "轨迹已导出。",
    "exportCancelled": "导出已取消。",
    "exportFailed": "无法导出轨迹。请重试。",
    "capture": "数字化",
    "capturePoint": "采集点",
    "captureLayerName": "GPS 点",
    "captured_other": "本次会话已采集 {{count}} 个点。",
    "pointCaptured": "点已保存到 {{layer}}。",
    "captureBlocked": "定位精度为 ±{{accuracy}}，差于 {{max}} 米的阈值。点未保存。",
    "satellites": "卫星",
    "satellitesShort": "卫星",
    "satellitesValue": "卫星：{{value}}",
    "satellitesShortValue": "卫星：{{value}}",
    "notAvailable": "—",
    "settings": "记录过滤器",
    "minDistance": "最小距离（米）",
    "minTime": "最小时间（秒）",
    "maxAccuracy": "最大精度误差（米）",
    "settingsHint": "间隔小于最小距离或最小时间的轨迹定位点会被跳过。精度差于阈值的定位点不会记录，且点采集会被阻止。设为 0 可禁用相应过滤器。",
    "openDialog": "打开 GPS 跟踪",
    "altitudeValue": "高程：{{value}} 米",
    "speedValue": "{{value}} 公里/小时",
    "headingValue": "{{value}}°",
    "source": "位置来源",
    "sourceDevice": "本设备",
    "sourceNmea": "NMEA 接收机（串口或蓝牙）",
    "nmeaBaudRate": "波特率",
    "nmeaConnectSerial": "连接串口",
    "nmeaConnectBluetooth": "连接蓝牙",
    "nmeaConnecting": "正在连接…",
    "nmeaConnected": "已连接到 {{device}}。",
    "nmeaDisconnect": "断开连接",
    "nmeaNotConnected": "请在上方连接 NMEA 接收机以开始接收位置数据。",
    "nmeaWaiting": "正在等待语句…",
    "nmeaStats": "{{parsed}} 条语句 · {{fixes}} 次定位",
    "nmeaConnectFailed": "无法连接到接收机。",
    "nmeaDisconnected": "接收机已断开连接。",
    "nmeaUnsupportedDevice": "在该设备上未找到 NMEA 服务。它可能是经典蓝牙接收机，需要先在系统设置中配对，然后在此处作为串口连接。",
    "nmeaUnsupported": "读取 NMEA 接收机需要 Web Serial 或 Web Bluetooth API，而此浏览器不提供这些接口。请在 Chrome 或 Edge 等 Chromium 浏览器中打开 GeoLibre。",
    "nmeaSerialUnsupported": "此处无法使用 Web Serial，因此无法打开串口接收机。",
    "nmeaBluetoothUnsupported": "此处无法使用 Web Bluetooth，因此无法打开低功耗蓝牙接收机。",
    "nmeaBluetoothHint": "大多数蓝牙 GPS 接收机使用经典蓝牙：在系统设置中配对后，它会在此处显示为串口。仅在使用低功耗蓝牙接收机时才使用“连接蓝牙”。",
    "fixQuality": {
      "invalid": "无定位",
      "gps": "GPS 定位",
      "dgps": "差分 GPS",
      "pps": "PPS 定位",
      "rtk-fixed": "RTK 固定解",
      "rtk-float": "RTK 浮动解",
      "estimated": "航位推算",
      "manual": "手动输入",
      "simulation": "模拟"
    }
  },
  "georeferencer": {
    "title": "图像地理配准",
    "description": "将图像与地图对齐：加载图像，将图像点与地图位置链接，然后将其作为地理配准叠加层添加。",
    "loadImage": "点击以加载图像（PNG、JPG、TIFF）",
    "imageTooLarge": "该图像过大（最大 {{max}}）。请选择更小的图像。",
    "imageReadError": "无法读取该图像。请尝试其他文件。",
    "imageNoDimensions": "无法确定图像尺寸。请使用栅格图像（PNG、JPG、TIFF）。",
    "sourceImage": "源图像（{{w}} × {{h}} 像素）",
    "clickImageHint": "点击图像上的一点，然后在地图上将其链接。",
    "pixelPicked": "图像点：{{x}}, {{y}}",
    "linkOnMap": "在地图上链接",
    "zoomIn": "放大",
    "zoomOut": "缩小",
    "zoomReset": "重置缩放",
    "importGcps": "导入",
    "exportGcps": "导出",
    "gcpsImported": "已导入 {{count}} 个控制点。",
    "gcpsReadError": "无法从该文件中读取控制点。",
    "gcpsOutsideImage": "部分控制点位于已加载图像之外 — 它们可能来自另一张图像。",
    "transformNeedsMore": "此变换至少需要 {{min}} 个控制点。",
    "gcps": "控制点（{{count}}）",
    "needGcps": "请至少添加 {{min}} 个控制点以进行地理配准。",
    "collinear": "控制点共线或重合 — 请将其中一个移出直线。",
    "cornersOutOfRange": "此拟合会将图像置于有效地图范围之外。请调整控制点。",
    "residual": "残差",
    "rms": "均方根误差 {{rms}} 米",
    "opacity": "叠加层不透明度",
    "addToMap": "添加到地图",
    "clear": "清除",
    "defaultName": "已地理配准的图像",
    "exportTiff": "导出 GeoTIFF",
    "exportTiffButton": "导出",
    "exportTiffHint": "在您的浏览器中（通过 GDAL/WASM）将图像扭曲为云优化 GeoTIFF。该引擎在首次使用时下载。",
    "transform": {
      "affine": "仿射（线性）",
      "polynomial": "多项式（二阶）",
      "tps": "薄板样条"
    },
    "exporting": "正在导出 GeoTIFF…（首次使用需加载 GDAL）",
    "exported": "GeoTIFF 已导出。",
    "exportFailed": "GeoTIFF 导出失败。详情请查看控制台。"
  },
  "collaborate": {
    "title": "实时协作",
    "description": "共享实时会话，让他人可以与您一起实时查看和编辑此地图。",
    "displayName": "您的姓名",
    "displayNamePlaceholder": "例如 Alex",
    "color": "您的颜色",
    "startHeading": "开始会话",
    "joinHeading": "加入会话",
    "mode": "谁可以编辑",
    "modeCoEdit": "任何人都可编辑",
    "modeViewOnly": "仅您可编辑（其他人观看）",
    "start": "开始会话",
    "join": "加入",
    "joinSession": "加入会话",
    "invitedHeading": "您已受邀",
    "invitedDescription": "选择您的姓名和颜色，然后加入主持人的实时会话。",
    "startInstead": "改为开始新会话",
    "sessionCode": "会话代码",
    "sessionCodePlaceholder": "输入代码",
    "shareLink": "分享链接",
    "scanToJoin": "扫码加入",
    "copyLink": "复制链接",
    "copyCode": "复制代码",
    "copied": "已复制",
    "participants": "参与者（{{count}}）",
    "host": "主持人",
    "you": "你",
    "guest": "访客",
    "connectFailed": "无法连接到协作服务器。",
    "copyFailed": "无法复制到剪贴板。",
    "connecting": "正在连接…",
    "reconnecting": "正在重新连接…",
    "connected": "实时会话已激活",
    "followHost": "跟随主持人视图",
    "goToMap": "前往地图并协作",
    "goToMapViewOnly": "前往地图并观看",
    "collapseRoster": "折叠参与者名单",
    "manageSession": "管理会话",
    "sessionStatusTooltip": "实时协作会话。点击查看当前连接的用户。",
    "announcements": "会话通知",
    "participantJoined": "{{name}} 加入了会话",
    "participantLeft": "{{name}} 离开了会话",
    "leave": "离开会话",
    "switchToCoEdit": "允许所有人编辑",
    "switchToViewOnly": "设为仅查看",
    "nameRequired": "请输入您的姓名以继续。",
    "codeRequired": "请输入会话代码以加入。",
    "canEdit": "可编辑",
    "viewOnly": "仅查看",
    "allowEdit": "允许此人编辑",
    "setViewOnly": "将此人设为仅查看",
    "chatLog": "会话聊天",
    "chatCompose": "输入消息",
    "chatEmpty": "尚无消息。",
    "chatPlaceholder": "发送消息…",
    "chatSend": "发送消息",
    "chatAttachLocation": "附加当前地图位置",
    "chatLocationAttached": "已附加位置（点击移除）",
    "chatGoToLocation": "前往此位置",
    "sessionStatusUnread_other": "实时协作会话，{{count}} 条未读消息。点击查看当前连接的用户并聊天。"
  },
  "share": {
    "title": "共享项目",
    "description": "将当前项目上传到 {{shareHost}} 并获取可分享的链接。",
    "setupIntro": "在上传前，请先连接您的 {{shareHost}} 账户。",
    "step1Title": "1. 获取 API 令牌",
    "step1Description": "登录 {{shareHost}}，然后在“设置 → API 令牌”下创建一个令牌。",
    "getToken": "获取 API 令牌",
    "step2Title": "2. 将令牌添加到 GeoLibre",
    "step2Description": "将令牌粘贴到本设备上的“设置 → 环境变量”中。",
    "configureToken": "配置本地令牌",
    "liveAt": "您的项目已发布在：",
    "copyLink": "复制链接",
    "open": "打开",
    "done": "完成",
    "projectTitle": "项目标题",
    "titlePlaceholder": "为您的项目命名",
    "titleRequired": "共享前请输入项目标题。",
    "visibility": "可见性",
    "visibilityUnlisted": "不公开列出（拥有链接的任何人可见）",
    "visibilityPublic": "公开（在图库中列出）",
    "visibilityPrivate": "私有（仅您可见）",
    "shareButton": "共享",
    "sharing": "正在共享…",
    "errorFallback": "无法共享该项目。",
    "usernameRequired": "共享前请在您的 {{shareHost}} 账户上设置用户名。请打开账户设置进行选择，然后重试。",
    "openAccountSettings": "打开账户设置",
    "credentialsRemoved": "未包含 {{count}} 个凭据字段。接收者需要提供自己的凭据或使用代理引用。"
  },
  "gallery": {
    "title": "项目图库",
    "description": "浏览在 {{shareHost}} 上共享的公开项目，并在 GeoLibre 中打开其中一个。",
    "searchPlaceholder": "按标题、作者或标签筛选已加载的项目",
    "loading": "正在加载项目…",
    "loadingMore": "正在加载更多…",
    "loadMore": "加载更多",
    "empty": "暂无公开项目可供显示。",
    "noMatches": "没有已加载的项目匹配您的筛选条件。",
    "errorFallback": "无法加载项目图库。",
    "errorTimeout": "项目图库加载超时。请重试。",
    "errorNetwork": "无法连接到 {{shareHost}}。请检查您的网络连接。",
    "errorHttp": "无法加载图库（HTTP {{status}}）。",
    "errorInvalidResponse": "无法加载图库（服务器响应无效）。",
    "errorUnauthorized": "您的 {{shareHost}} API 令牌无效或已过期。请在设置中更新它。",
    "errorUsernameRequired": "在加载您的项目之前，请在您的 {{shareHost}} 账户上设置用户名。",
    "errorNotConfigured": "此部署未配置项目共享服务器。",
    "retry": "重试",
    "open": "打开",
    "openCopy": "打开副本",
    "opening": "正在打开…",
    "openingCopy": "正在打开副本…",
    "openOnWeb": "在网页上查看",
    "openError": "无法打开此项目。",
    "byAuthor": "作者：{{author}}",
    "views_other": "{{count}} 次查看",
    "untitled": "未命名项目",
    "noThumbnail": "无预览",
    "resizeDialog": "调整图库大小",
    "scopeFeatured": "精选",
    "scopeAll": "全部项目",
    "scopeMine": "我的项目",
    "signedOutHint": "在设置中添加 {{shareHost}} API 令牌，即可查看您自己的不公开列出及私有项目。",
    "emptyFeatured": "暂无精选项目。",
    "emptyMine": "您尚未共享任何项目。",
    "visibilityUnlisted": "不公开列出",
    "visibilityPrivate": "私有"
  },
  "template": {
    "saveTitle": "另存为模板",
    "saveDescription": "将此项目按当前配置保存为可复用的模板，存入您的个人库。",
    "defaultName": "未命名模板",
    "nameLabel": "模板名称",
    "namePlaceholder": "例如 机构标准地图",
    "descriptionLabel": "描述（可选）",
    "descriptionPlaceholder": "例如 为团队地图预配置的底图、样式和仪表板布局",
    "stripDataLayersLabel": "移除数据图层",
    "stripDataLayersDesc": "保留底图、图层分组、样式、图例、小部件和布局，但移除数据图层的内容。",
    "saveAction": "保存到模板库"
  },
  "language": {
    "label": "语言",
    "description": "选择界面使用的语言。"
  },
  "printLayout": {
    "title": "打印布局",
    "description": "使用标题、图例、比例尺和指北针制作可打印的地图，然后导出为 PNG 或 PDF。",
    "preview": "预览",
    "resizeControls": "调整控制面板大小",
    "resizeDialog": "调整对话框大小",
    "recapture": "重新捕获地图",
    "copyToClipboard": "复制到剪贴板",
    "copied": "已复制",
    "exportPng": "导出 PNG",
    "exportPdf": "导出 PDF",
    "titleLabel": "标题",
    "titlePlaceholder": "地图标题",
    "subtitleLabel": "副标题",
    "subtitlePlaceholder": "可选副标题",
    "size": "尺寸",
    "sizeGroup": {
      "paper": "纸张",
      "screen": "屏幕 / 数字"
    },
    "sizeCustom": "自定义…",
    "orientation": "方向",
    "portrait": "纵向",
    "landscape": "横向",
    "width": "宽度",
    "height": "高度",
    "unit": "单位",
    "titlePlacement": "标题位置",
    "placement": {
      "outside": "框外",
      "inside": "框内"
    },
    "alignment": "对齐方式",
    "align": {
      "left": "左对齐",
      "center": "居中",
      "right": "右对齐"
    },
    "mapElements": "地图元素",
    "element": {
      "title": "标题",
      "subtitle": "副标题",
      "legend": "图例",
      "scaleBar": "比例尺",
      "northArrow": "指北针",
      "groupNavigation": "将指北针与比例尺编组",
      "footer": "页脚文本",
      "date": "日期",
      "attribution": "包含 GeoLibre 归属信息",
      "pageBorder": "页面边框",
      "infoBlock": "信息块（标题栏）",
      "colorbar": "色带",
      "customLegend": "自定义图例",
      "dataTable": "属性表",
      "dataChart": "图表"
    },
    "dataBlocks": {
      "layer": "图层",
      "titleLabel": "标题",
      "position": "位置",
      "filterToPage": "仅显示页面范围内的要素",
      "filterToPageHint": "适用于地图集页面和绘制的打印范围；否则使用整个图层。"
    },
    "dataTable": {
      "columns": "列",
      "columnsHint": "默认选中前 {{count}} 个字段。勾选列以自定义。",
      "maxRows": "最大行数",
      "moreRows_other": "还有 {{count}} 行",
      "noRows": "当前设置下没有可显示的行。"
    },
    "dataChart": {
      "type": "图表类型",
      "typeBar": "柱状图",
      "typePie": "饼图",
      "typeLine": "折线图",
      "categoryField": "分类字段",
      "aggregation": "聚合",
      "aggCount": "计数",
      "aggSum": "求和",
      "aggMean": "平均值",
      "valueField": "值字段",
      "noNumericFields": "此图层没有可聚合的数值字段。",
      "noData": "当前设置下没有图表数据。"
    },
    "customLegend": {
      "title": "图例标题",
      "color": "颜色",
      "itemLabel": "标签",
      "position": "位置",
      "addItem": "添加项目",
      "removeItem": "移除项目",
      "importFromDict": "从字典导入",
      "import": "导入",
      "importError": "请输入有效的 {\"标签\": \"颜色\"} 字典。"
    },
    "colorbar": {
      "colormap": "色彩映射",
      "min": "最小值",
      "max": "最大值",
      "label": "标签",
      "labelPlaceholder": "例如 高程 (m)",
      "orientation": "方向",
      "vertical": "垂直",
      "horizontal": "水平",
      "position": "位置",
      "length": "长度"
    },
    "position": {
      "topLeft": "左上",
      "topRight": "右上",
      "bottomLeft": "左下",
      "bottomRight": "右下"
    },
    "footerTextLabel": "页脚文本",
    "footerPlaceholder": "自定义页脚文本",
    "margin": "页边距",
    "marginOption": {
      "normal": "正常",
      "narrow": "窄",
      "none": "无（无边框）"
    },
    "mapBackground": "地图背景",
    "scaleLabel": "比例尺 (1:N)",
    "scalePlaceholder": "例如 25000",
    "scalePresets": "预设…",
    "scalePresetsAria": "比例尺预设",
    "extent": {
      "label": "打印范围",
      "draw": "在地图上绘制范围",
      "redraw": "在地图上重新绘制范围",
      "useViewport": "使用当前视口",
      "useCustom": "裁剪到自定义范围",
      "clear": "清除范围",
      "hint": "在地图上拖动一个框以设置精确的打印区域。按住 Shift 可保持与页面比例一致。"
    },
    "info": {
      "author": "作者",
      "authorPlaceholder": "作者或机构",
      "project": "项目编号",
      "projectPlaceholder": "参考编号",
      "crs": "坐标参考系",
      "crsPlaceholder": "例如 EPSG:4326",
      "scale": "比例尺",
      "revision": "版本",
      "revisionPlaceholder": "例如 Rev 01"
    },
    "borderColor": "边框颜色",
    "borderWidth": "边框宽度",
    "mapBorderColor": "地图框颜色",
    "mapBorderWidth": "地图框宽度",
    "errors": {
      "mapNotReady": "地图尚未准备就绪。请稍后重试。",
      "captureFailed": "无法捕获地图图像。",
      "captureFirst": "导出前请先捕获地图。",
      "exportFailed": "导出 {{format}} 失败。",
      "clipboardFailed": "无法将布局复制到剪贴板。",
      "scaleOutOfRange": "此比例尺超出了当前视图可达到的范围；将显示最接近的可用比例尺。"
    },
    "legend": {
      "section": "图例",
      "titleLabel": "图例标题",
      "defaultTitle": "图例",
      "groupByLayer": "按图层对分类分组",
      "empty": "没有可见图层可包含在图例中。",
      "labelPlaceholder": "标签",
      "moveUp": "上移条目",
      "moveDown": "下移条目",
      "showEntry": "显示条目",
      "hideEntry": "隐藏条目",
      "moreItems_other": "还有 {{count}} 项"
    },
    "atlas": {
      "section": "地图集（地图系列）",
      "enable": "生成多页地图系列",
      "coverageLayer": "覆盖图层",
      "coverage": "覆盖方式",
      "coveragePerFeature": "每个要素一页",
      "coverageAlongLine": "沿线分页",
      "segmentLength": "分段长度（公里）",
      "segmentRequired": "请输入不小于 0.1 公里的分段长度。",
      "segmentTruncated": "系列已限制为 {{count}} 页。请增大分段长度。",
      "noLineFeatures": "覆盖图层没有线要素。",
      "noLayers": "没有已加载要素的矢量图层。请先添加 GeoJSON 或其他本地矢量图层。",
      "nameField": "页面名称字段",
      "nameFieldNone": "要素编号",
      "extentMode": "页面范围",
      "extentMargin": "要素周围边距",
      "extentScale": "固定比例尺",
      "marginLabel": "边距（%）",
      "scaleLabel": "比例尺",
      "scaleRequired": "请输入大于零的比例尺。",
      "sortField": "排序依据",
      "sortNone": "图层顺序",
      "sortOrder": "排序方式",
      "sortAsc": "升序",
      "sortDesc": "降序",
      "filterLabel": "过滤器",
      "filterPlaceholder": "例如 POP2000 > 100000 and ST = \"CA\"",
      "filterError": "无法解析该过滤器。请使用“字段-运算符-值”比较（=、!=、>、>=、<、<=、contains），并用 \"and\" 连接。",
      "filenamePattern": "页面文件名（ZIP 导出）",
      "pages_other": "{{count}} 页",
      "noPages": "没有要素匹配当前过滤器。",
      "pageOf": "第 {{current}} 页，共 {{total}} 页",
      "prevPage": "上一地图集页面",
      "nextPage": "下一地图集页面",
      "exportZip": "导出 PNG ZIP",
      "exportPdfPages_other": "导出 PDF（{{count}} 页）",
      "exporting": "正在导出第 {{current}} 页，共 {{total}} 页...",
      "tokensHint": "标记 {atlas.name}、{atlas.pagenumber}、{atlas.total} 和 {atlas.attr:FIELD} 会在标题、副标题、页脚和页面文件名中按页替换。",
      "alongLineHint": "页面按顺序沿每条线排列；km_start、km_end、segment 和 segments 可作为 {atlas.attr:FIELD} 标记使用。"
    }
  },
  "kml": {
    "importFailed": "无法导入 KML/KMZ。",
    "timeOverlayGroup": "时间叠加动画"
  },
  "map": {
    "boundsRestricted": "范围已锁定",
    "boundsRestrictedTooltip": "地图范围受到限制。您可以在“设置”中更改此项。",
    "directionsMode": {
      "title": "路线模式已激活",
      "hint": "点击地图以添加途经点。拖动途经点可移动它，点击它可移除。路线会自动更新。",
      "removeLast": "移除最后一个",
      "clear": "清除",
      "exit": "退出",
      "calculating": "正在计算路线...",
      "totalDistance": "距离",
      "estimatedTime": "预计时间",
      "segment": "路段 {{index}}",
      "metricsUnavailable": "路线指标不可用",
      "distanceKilometers": "{{value}} 千米",
      "distanceMeters": "{{value}} 米",
      "durationLessThanMinute": "< 1 分钟",
      "durationMinutes": "{{value}} 分钟",
      "durationHours": "{{value}} 小时",
      "durationHoursMinutes": "{{hours}} 小时 {{minutes}} 分钟",
      "waypointCount_zero": "尚未放置途经点",
      "waypointCount_other": "已放置 {{count}} 个途经点"
    },
    "reverseGeocodeMode": {
      "title": "反向地理编码模式已激活",
      "hint": "点击地图上的任意位置以查询该点的地址。",
      "exit": "退出"
    },
    "pixelTimeSeriesMode": {
      "start": "像素时间序列"
    }
  },
  "terrainSettings": {
    "title": "地形夸张系数",
    "description": "调整 3D 地形的垂直夸张系数。数值越大，山丘和山脉看起来越陡峭。",
    "label": "垂直夸张系数",
    "controlLabel": "切换地形（双击以调整夸张系数）",
    "reset": "重置",
    "done": "完成"
  },
  "pixelTimeSeries": {
    "title": "像素时间序列",
    "empty": "点击地图上的像素以绘制其随时间变化的数值。添加更多像素以进行比较。",
    "band": "波段",
    "bandOption": "波段 {{index}}",
    "pointLabel": "点 {{number}}",
    "pickPoints": "选取点",
    "stopPicking": "停止选取",
    "clearAll": "全部清除",
    "removePoint": "移除 {{label}}",
    "close": "关闭",
    "erroredExcluded": "导出中不包含 {{n}} 次读取失败的数据。",
    "querying": "正在读取整个时间线上的像素值...",
    "progress": "正在读取 {{done}} / {{total}}...",
    "noValues": "所选波段在这些位置没有数值（超出栅格范围或所有时间步均为无数据值）。",
    "truncated": "显示 {{total}} 个时间线步骤中的 {{kept}} 个（已降采样以限制读取次数）。",
    "chartAria": "像素值随时间变化的折线图",
    "yAxis": "Y 轴",
    "yMin": "最小值",
    "yMax": "最大值",
    "axisAuto": "自动",
    "gapNote": "虚线段跨越没有数值的日期（无数据或超出覆盖范围）。",
    "exportCsv": "导出 CSV",
    "exportGeoParquet": "导出 GeoParquet"
  },
  "basemapExtract": {
    "title": "提取离线底图",
    "url": "底图 URL",
    "urlPlaceholder": "https://data.source.coop/…/planet.pmtiles",
    "useView": "使用地图视图",
    "drawBbox": "在地图上绘制",
    "drawing": "正在绘制…",
    "drawHint": "在地图上拖动一个框以设置提取区域。",
    "clearBbox": "清除已绘制的区域",
    "north": "北",
    "south": "南",
    "west": "西",
    "east": "东",
    "bboxHint": "请输入有效的边界框：西 < 东，南 < 北，且在 [-180, 180] 和 [-90, 90] 范围内。",
    "minZoom": "最小缩放级别",
    "maxZoom": "最大缩放级别",
    "zoomHint": "缩放级别必须为整数，且最小值 ≤ 最大值（0–30）。超出存档最大级别的部分将被忽略。",
    "errorNoSourceLayers": "此矢量存档没有图层元数据，因此无法渲染。请尝试其他存档。",
    "savedTitle": "已保存的底图",
    "openFile": "打开文件…",
    "savedEmpty": "尚无已保存的底图。请在上方提取一个，或打开 .pmtiles 文件。",
    "errorNotBasemap": "此文件不是 Protomaps 矢量底图，因此无法应用样式。",
    "apply": "用作底图",
    "rename": "重命名",
    "delete": "删除",
    "confirmDelete": "删除？",
    "style": "底图样式",
    "flavor": {
      "light": "浅色",
      "dark": "深色",
      "white": "白色",
      "grayscale": "灰度",
      "black": "黑色"
    },
    "flavorOverlay": "无（叠加图层）",
    "styleHintBasemap": "将提取结果渲染为带样式的 Protomaps 底图（道路、水系、标注），可离线使用。",
    "styleHintOverlay": "将提取结果添加为普通叠加图层，而非带样式的底图。",
    "phaseDirectories": "正在读取存档目录…",
    "phaseData": "正在下载瓦片…",
    "resize": "调整面板大小",
    "estimatedSize": "≈ {{size}} · {{tiles}} 个瓦片",
    "estimatedSizeLarge": "下载量较大：≈ {{size}} · {{tiles}} 个瓦片",
    "planWarning": "此次提取约 {{size}}，涉及 {{tiles}} 个瓦片，且在内存中组装。是否继续？",
    "planContinue": "继续",
    "extract": "提取",
    "extracting": "正在提取…",
    "successSaved": "已保存到 {{path}} 并添加到地图。",
    "successAdded": "已添加到地图（文件未保存）。",
    "successAddedSaveFailed": "已添加到地图，但保存到磁盘失败：{{error}}",
    "successBasemapSaved": "已保存到 {{path}} 并设为底图。",
    "successBasemapApplied": "已设为底图（文件未保存）。",
    "successBasemapSaveFailed": "已设为底图，但保存到磁盘失败：{{error}}"
  },
  "rasterSubset": {
    "title": "提取子集",
    "drawBbox": "绘制边界框",
    "drawing": "绘制中…",
    "drawHint": "在地图上拖拽绘制边界框，按 Esc 取消。",
    "useView": "使用视图",
    "north": "北",
    "south": "南",
    "west": "西",
    "east": "东",
    "bboxHint": "请输入有效的边界框：东西经度在 -180 到 180 之间，南北纬度在 -90 到 90 之间，且西 < 东、南 < 北。",
    "bboxAntimeridianHint": "西经度必须小于东经度。不支持跨越 180° 经线的边界框；请拆分为两次提取。",
    "zoom": "缩放级别",
    "zoomHint": "请输入 0 到 30 之间的整数缩放级别。",
    "resolution": "分辨率",
    "resolutionPlaceholder": "原始",
    "resolutionHint": "输出 CRS 单位的像素大小。留空保持原始分辨率。",
    "advanced": "高级选项",
    "outputCrs": "输出 CRS (EPSG)",
    "outputCrsPlaceholder": "与输入相同",
    "nodata": "Nodata 值",
    "nodataPlaceholder": "无",
    "additionalArgs": "附加选项",
    "additionalArgsPlaceholder": "level=2\nwidth=512",
    "additionalArgsHint": "每行一个 key=value，例如 level、width、height。",
    "errorResolution": "分辨率必须为正数。",
    "errorOutputCrs": "输出 CRS 必须为正 EPSG 代码。",
    "errorNodata": "Nodata 必须为数字。",
    "errorAdditionalArgs": "附加选项必须每行一个 key=value。",
    "extract": "提取并保存",
    "extracting": "提取中…",
    "success": "提取成功。"
  },
  "mapGrid": {
    "layers": "图层",
    "layersLabel": "地图 {{number}} 的图层可见性",
    "noLayers": "尚无图层",
    "labelPlaceholder": "标签",
    "labelLabel": "地图 {{number}} 的标签",
    "removePane": "移除地图 {{number}}",
    "show3d": "将地图 {{number}} 显示为 3D 地球",
    "show2d": "将地图 {{number}} 显示为 2D 地图",
    "only2d": "仅 2D"
  },
  "mapContextMenu": {
    "copyCoordinatesHint": "复制坐标到剪贴板",
    "quickActions": "快捷操作",
    "whatsHere": "这里是什么？",
    "copyGeoJson": "复制为 GeoJSON",
    "centerHere": "以此为中心",
    "zoomInHere": "放大到此处",
    "viewInGoogleMaps": "在 Google 地图中查看",
    "viewInGoogleEarth": "在 Google Earth 中查看"
  },
  "quickAnalysis": {
    "menu": "快速分析",
    "bufferHere": "在此创建 {{distance}} 缓冲区",
    "bufferFeatures": "为所有要素创建 {{distance}} 缓冲区",
    "driveTimeHere": "从此处的驾车时间（{{contours}} 分钟）",
    "walkTimeHere": "从此处的步行时间（{{contours}} 分钟）",
    "centroids": "质心",
    "convexHull": "凸包",
    "boundingBox": "边界框",
    "openInProcessing": "在处理中打开…",
    "bufferLayerName": "缓冲区 {{distance}}",
    "bufferOfLayerName": "{{name}} 缓冲区 {{distance}}",
    "driveTimeLayerName": "驾车时间",
    "walkTimeLayerName": "步行时间",
    "centroidsLayerName": "{{name}} 质心",
    "convexHullLayerName": "{{name}} 凸包",
    "boundingBoxLayerName": "{{name}} 边界框",
    "running": "正在运行 {{tool}}…",
    "failed": "{{tool}} 失败",
    "viewDetails": "查看详情",
    "unit": {
      "meters": "米",
      "kilometers": "千米",
      "miles": "英里"
    }
  },
  "knowledgeCard": {
    "title": "地点信息",
    "loading": "正在查询此地点…",
    "empty": "此地点附近未找到维基百科条目。",
    "error": "无法加载地点信息。请重试。",
    "readMore": "在维基百科上阅读更多",
    "nearby": "附近地点",
    "attribution": "内容来自维基百科，采用 CC BY-SA 许可。",
    "noticeTitle": "知识卡片使用维基百科",
    "noticeDesc": "打开知识卡片会将您点击地点的坐标（以及您打开的附近条目标题）发送到维基百科公共 API 以获取摘要和照片 — 您的坐标会离开您的设备用于这些请求。"
  },
  "onboarding": {
    "title": "欢迎使用 GeoLibre",
    "description": "选择您的经验水平以定制界面。您可以随时在“设置 → 界面”中更改此设置。",
    "level": {
      "beginner": {
        "title": "初级",
        "description": "仅显示基本数据源和工具。"
      },
      "intermediate": {
        "title": "中级",
        "description": "显示常用数据源、服务和插件。"
      },
      "advanced": {
        "title": "高级",
        "description": "显示 GeoLibre 提供的所有功能。"
      }
    },
    "showEverything": "跳过 — 显示全部内容"
  },
  "settings": {
    "title": "设置",
    "description": "配置项目首选项和运行时设置。",
    "saveButton": "保存设置",
    "section": {
      "map": "地图",
      "layout": "布局",
      "appearance": "外观",
      "interface": "界面",
      "geocoding": "地理编码",
      "ai": "AI 提供方",
      "environment": "环境",
      "updates": "更新"
    },
    "menu": {
      "mapPreferences": "地图首选项",
      "layoutSettings": "布局设置",
      "appearanceSettings": "外观设置",
      "interfaceSettings": "界面设置",
      "geocoding": "地理编码",
      "ai": "AI 提供方",
      "environmentVariables": "环境变量",
      "updates": "更新设置",
      "managePlugins": "管理插件",
      "styleManager": "样式管理器",
      "urlOverrideNote": "URL 布局参数会覆盖已保存的设置。"
    },
    "updates": {
      "title": "软件更新",
      "description": "控制 GeoLibre 桌面应用启动时如何检查新版本。",
      "checkOnStartup": "启动时检查更新",
      "checkOnStartupHint": "启用后，GeoLibre 每次启动时都会检查是否有新版本。若要实现完全离线的工作流程，请关闭此选项。",
      "notificationLevel": "通知我关于",
      "notificationLevelHint": "选择哪些类型的发行版会触发启动通知。",
      "level": {
        "all": "所有发行版（主要版本、次要版本和补丁）",
        "minor": "仅主要及次要版本",
        "major": "仅主要版本"
      }
    },
    "map": {
      "constraintsTitle": "地图约束",
      "restrictBounds": "限制地图范围",
      "west": "西",
      "south": "南",
      "east": "东",
      "north": "北",
      "useCurrentView": "使用当前视图",
      "useCurrentViewHint": "捕获当前地图范围并开启“限制地图范围”。",
      "useCurrentViewGlobeHint": "使用此功能前请切换到墨卡托投影。在地球投影下，地图仍可能略微超出已捕获的范围。",
      "minZoom": "最小缩放级别",
      "maxZoom": "最大缩放级别",
      "maxPitch": "最大倾斜角",
      "renderWorldCopies": "渲染世界副本",
      "ellipsoid": "天体",
      "ellipsoidHint": "设置用于距离、面积和比例尺测量的半径。请在“添加数据”中选择匹配的星球底图。",
      "scaleUnit": "比例尺单位",
      "scaleUnitMetric": "公制 (m / km)",
      "scaleUnitImperial": "英制 (ft / mi)",
      "scaleUnitNautical": "海里 (nmi)",
      "scaleUnitHint": "选择地图底部比例尺显示的单位。",
      "errorBoundsUnavailable": "地图范围尚不可用。"
    },
    "layout": {
      "title": "布局",
      "description": "工作区可见性与工具栏显示方式。",
      "toolbar": "工具栏",
      "panels": "面板",
      "showToolbarLabels": "显示工具栏标签",
      "showProjectInfo": "显示项目信息",
      "showProjectInfoToolbar": "在工具栏中显示项目信息",
      "showLayersPanel": "显示图层面板",
      "showStylePanel": "显示样式面板",
      "showBrowserPanel": "显示浏览器面板",
      "showCommentsPanel": "显示评论面板",
      "showAttributePanel": "显示属性面板",
      "urlParamsNote": "在共享查看器链接中存在时，URL 布局参数仍然生效。"
    },
    "appearance": {
      "title": "外观",
      "description": "选择浅色或深色模式，以及在其基础上应用的强调色。",
      "themeMode": "模式",
      "mode": {
        "light": "浅色",
        "dark": "深色"
      },
      "accentColor": "强调色",
      "custom": "自定义",
      "customColor": "自定义颜色",
      "customColorHex": "自定义颜色十六进制代码",
      "scheme": {
        "blue": "蓝色",
        "violet": "紫罗兰色",
        "emerald": "翡翠绿",
        "rose": "玫瑰色",
        "amber": "琥珀色"
      }
    },
    "interface": {
      "title": "界面配置",
      "description": "选择一个经验水平以简化界面。不会移除任何功能，因此您可以随时在此切换级别或重新启用项目。",
      "presets": "经验水平",
      "presetsHint": "初级、中级和高级会立即应用预设的布局。编辑下方任意项目会切换为自定义模式，或点击“自定义”以自定义模式保留当前设置。",
      "level": {
        "beginner": "初级",
        "intermediate": "中级",
        "advanced": "高级",
        "custom": "自定义"
      },
      "dataSources": "数据源",
      "plugins": "插件",
      "menus": "菜单",
      "lockedNote": "此界面配置由您的管理员管理，无法更改。"
    },
    "env": {
      "tokenTitle": "Share.GeoLibre API 令牌",
      "tokenDescription": "“项目 > 共享”使用此令牌将您的地图上传到 {{shareHost}}。请打开 <tokenLink>{{shareHost}}/settings</tokenLink>，在“设置 > API 令牌”下创建一个令牌，然后将其粘贴到下方字段中。",
      "tokenStorageNote": "仅存储在本设备上，并且仅发送到 {{shareHost}} 用于验证上传。在 Web 版本中，它与其他站点数据共用同一浏览器存储，因此如果您的设备遭到入侵，请在 {{shareHost}} 上撤销该令牌。",
      "tokenUnavailable": "此部署未配置项目共享服务器，因此无需 API 令牌。",
      "tokenHostInvalid": "此部署的项目共享服务器地址无效，因此无法使用此令牌。",
      "tokenPlaceholder": "glb_…",
      "cesiumTokenTitle": "Cesium Ion 令牌",
      "cesiumTokenDescription": "3D 地球（分屏视图窗格）使用 Cesium Ion 的世界影像和地形数据，需要访问令牌。请在 <tokenLink>ion.cesium.com/tokens</tokenLink> 创建免费账户，复制您的默认访问令牌，并粘贴到下方。若无令牌，3D 地球切换开关将被隐藏。",
      "cesiumTokenStorageNote": "仅存储在本设备上（不存储在项目文件中，因此永远不会被共享），并且仅发送到 Cesium Ion。在 Web 版本中，它与其他站点数据共用同一浏览器存储。",
      "cesiumTokenPlaceholder": "eyJhbGciOi…",
      "variablesTitle": "环境变量",
      "variablesCount_other": "已启用 {{count}} 个运行时变量。",
      "secretsWarning": "变量值以纯文本形式存储在项目文件中，在共享项目时可能会暴露。除非项目文件保持私有，否则请勿在此放置机密信息。",
      "empty": "尚未配置任何环境变量。",
      "variableFallback": "变量",
      "enableAria": "启用 {{name}}",
      "nameAria": "变量名称",
      "namePlaceholder": "VITE_EXAMPLE_KEY",
      "valueAria": "变量值",
      "valuePlaceholder": "值",
      "showValueAria": "显示 {{name}} 的值",
      "hideValueAria": "隐藏 {{name}} 的值",
      "removeAria": "移除 {{name}}",
      "errorNamePattern": "环境变量名称必须以字母或下划线开头，且只能包含字母、数字和下划线。",
      "errorDuplicate": "环境变量“{{name}}”重复。",
      "stripPromptTitle": "是否移除凭据？",
      "stripPromptDesc": "此项目包含 {{count}} 个可能存有凭据的字段，例如 API 密钥、请求标头或插件设置。是否从保存的文件中移除？无论如何，当前工作区都会保留这些凭据。",
      "stripButton": "移除凭据",
      "keepButton": "保留在文件中"
    },
    "geocoding": {
      "title": "地理编码",
      "description": "选择“地理编码地址”和“反向地理编码”所使用的地理编码后端。Nominatim 为默认选项，无需密钥。",
      "provider": "提供方",
      "requiresKey": "此提供方需要 API 密钥或访问令牌。",
      "optionalKey": "托管服务需要 API 密钥；自托管实例则不需要。",
      "noKey": "此提供方无需 API 密钥即可使用。",
      "apiKey": "API 密钥",
      "apiKeyPlaceholder": "粘贴该提供方的 API 密钥或令牌",
      "toggleApiKey": "切换 API 密钥可见性",
      "forwardEndpoint": "正向地理编码端点（可选）",
      "reverseEndpoint": "反向地理编码端点（可选）",
      "email": "联系邮箱（可选）",
      "emailPlaceholder": "you@example.org",
      "emailHint": "仅由 Nominatim 使用，该服务建议提供此项以帮助识别您的应用程序 — 仅在提供时发送。",
      "secretsWarning": "密钥以纯文本形式存储在项目文件中，在共享项目时可能会暴露。它们也会作为查询参数发送，因此会出现在浏览器开发者工具及任何代理日志中可见的地理编码请求 URL 中。",
      "corsNote": "Google 官方并不允许浏览器直接请求其地理编码 API，因此除非通过同源代理提供服务，否则请求可能会被阻止。"
    },
    "ai": {
      "title": "AI 助手提供方",
      "description": "为 AI 助手配置凭据。选择一个提供方，填写其所需字段，然后保存。仅需配置一个提供方即可开始对话。",
      "providerLabel": "提供方",
      "providerHint": "选择一个提供方以显示其所需的具体字段。",
      "configuredMark": "（已配置）",
      "optionalMark": "（可选）",
      "statusReady": "{{provider}} 已配置完成，可以使用。",
      "statusIncomplete": "请填写以下必填字段以启用 {{provider}}。",
      "secretsNote": "凭据保存在此设备本地，不在您共享的项目文件中，因此会在重启后保留。任何有权访问此设备的人都可以读取它们。",
      "getCredentials": "在哪里获取 {{provider}} 凭据",
      "showValue": "显示 {{name}}",
      "hideValue": "隐藏 {{name}}",
      "osEnvNote": "桌面应用还会从系统环境变量读取匹配的 API 密钥。这些会自动使用且永远不会保存到项目文件中 — 留空字段以继续使用环境变量值。",
      "osEnvField": "从系统环境变量 {{name}} 读取。",
      "osEnvPlaceholder": "在系统环境中设置",
      "newProfile": "新建配置文件",
      "cancel": "取消",
      "addProfile": "添加配置文件",
      "profileName": "配置文件名称",
      "profileNamePlaceholder": "例如 工作 Gemini、本地 Ollama",
      "profileCount_other": "{{count}} 个配置文件",
      "noProfiles": "尚无配置文件。请在下方添加一个以配置 AI 助手。",
      "setDefault": "设为默认",
      "defaultProfile": "默认",
      "edit": "编辑",
      "deleteProfile": "删除配置文件",
      "backToProfiles": "← 返回配置文件列表",
      "saveProfile": "保存配置文件",
      "profileEditSaveHint": "请先保存或放弃上方的配置文件更改，然后点击“保存设置”以提交所有更改。",
      "field": {
        "apiKey": "API 密钥",
        "baseUrl": "基础 URL",
        "model": "模型",
        "region": "区域",
        "accessKeyId": "访问密钥 ID",
        "secretAccessKey": "秘密访问密钥",
        "sessionToken": "会话令牌"
      },
      "placeholder": {
        "geminiKey": "AIza…",
        "anthropicKey": "sk-ant-…",
        "openaiKey": "sk-…",
        "ollamaBaseUrl": "http://localhost:11434",
        "ollamaModel": "llama3.2",
        "awsAccessKey": "AKIA…",
        "awsSecretKey": "wJalrXUtnFEMI…",
        "awsRegion": "us-east-1",
        "awsSessionToken": "FwoGZXIvYXdz…（如使用临时凭据）",
        "customBaseUrl": "https://api.example.com/v1",
        "customModel": "model-id",
        "customApiKey": "sk-…（如需要）"
      }
    }
  },
  "toolbar": {
    "menu": {
      "project": "项目",
      "import": "导入",
      "edit": "编辑",
      "view": "视图",
      "addData": "添加数据",
      "processing": "处理",
      "controls": "控件",
      "plugins": "插件",
      "help": "帮助",
      "settings": "设置"
    },
    "atmosphere": {
      "haloColor": "光晕颜色",
      "haloExtent": "光晕范围",
      "haloExtentHint": "大气光晕超出地球表面的延伸程度。数值越低，数据越贴近表面；数值越高，光晕越宽广、越轻盈。",
      "haloOpacity": "光晕强度",
      "spaceColor": "太空颜色",
      "reset": "恢复默认设置",
      "globeOnly": "大气效果仅在启用地球视图时可用。"
    },
    "sun": {
      "title": "太阳",
      "date": "日期",
      "time": "时间",
      "timeOfDay": "一天中的时间",
      "play": "播放",
      "pause": "暂停",
      "stepBack": "后退一小时",
      "stepForward": "前进一小时",
      "speed": "动画速度",
      "loop": "循环播放",
      "now": "当前",
      "shade": "夜间阴影",
      "close": "关闭",
      "localTimeNote": "所示时间为您计算机所在时区的时间。"
    },
    "routeAnimation": {
      "title": "路线动画",
      "layer": "路线图层",
      "selectLayer": "选择线图层…",
      "noLineLayers": "项目中没有线图层",
      "play": "播放",
      "pause": "暂停",
      "loop": "循环播放",
      "progress": "进度",
      "speed": "速度",
      "followCamera": "跟随",
      "followPitch": "相机俯仰角",
      "followZoom": "相机缩放",
      "followRotate": "旋转到航向",
      "color": "路线颜色",
      "marker": "标记",
      "markerStyle": {
        "arrow": "箭头（朝向）",
        "point": "点",
        "none": "无"
      },
      "trail": "轨迹",
      "saveVideoMp4": "保存为 MP4",
      "saveVideoWebm": "保存为 WebM",
      "estimatedLength": "≈ {{seconds}} 秒",
      "recordingStatus": "正在录制… {{percent}}%",
      "savingVideo": "正在保存视频…",
      "stop": "停止",
      "videoSaved": "已保存 {{name}}",
      "videoError": "无法录制动画。请重试。",
      "videoUnsupported": "此浏览器不支持视频录制。",
      "videoFileTypeMp4": "MP4 视频",
      "videoFileTypeWebm": "WebM 视频",
      "collapse": "折叠",
      "expand": "展开",
      "close": "关闭"
    },
    "flightSim": {
      "title": "飞行模拟器",
      "start": "开始飞行",
      "stop": "停止飞行",
      "collapse": "折叠",
      "expand": "展开",
      "close": "关闭",
      "speed": "速度",
      "altitude": "高度",
      "heading": "航向",
      "agl": "离地高度",
      "throttle": "油门",
      "maxSpeed": "最高速度",
      "minAgl": "地形安全高度",
      "units": "单位",
      "imperial": "节 / 英尺",
      "metric": "公里/小时 / 米",
      "bankCamera": "转弯时倾斜地平线",
      "invertPitch": "反转俯仰轴",
      "knots": "kt",
      "kph": "km/h",
      "feet": "ft",
      "meters": "m",
      "terrainWarning": "地形告警 — 请拉升",
      "help": "方向键或 A/D 控制转向 · W/S 或 Page Up/Down 控制油门 · 空格键改平机翼 · Esc 退出。"
    },
    "setView": {
      "title": "设置视图",
      "description": "将地图移动到精确的相机位置。",
      "sectionCoordinates": "坐标",
      "smartPaste": "粘贴坐标",
      "smartPasteInputLabel": "坐标字符串",
      "smartPastePlaceholder": "例如 51.5074, -0.1278 或 51°30'26\"N, 0°07'39\"W",
      "smartPasteInfo": "以 DD、DMS 或 DDM 格式键入或粘贴完整的坐标字符串，然后运行“处理输入”。GeoLibre 会检测格式并填充下方的经度和纬度字段。请在前往目标位置前分别调整缩放、倾斜角和方位角。",
      "smartPasteInfoLabel": "关于粘贴坐标",
      "smartPasteInvalid": "无法读取这些坐标。请以 DD、DMS 或 DDM 格式输入完整的经纬度，例如 51.5074, -0.1278。部分或不完整的字符串无法解析。",
      "processInput": "处理输入",
      "processed": "已填充下方的经度和纬度字段。",
      "sectionZoom": "相机缩放",
      "sectionOrientation": "相机方向",
      "orientationHint": "若留空，倾斜角和方位角默认为 0。",
      "format": "手动输入格式",
      "formatInfo": "这些按钮仅用于选择您手动输入中心点的格式。上方的粘贴框已支持任意格式。\nDD：51.5074, -0.1278\nDMS：51°30'26\"N, 0°07'39\"W\nDDM：51°30.44'N, 0°07.65'W",
      "formatInfoLabel": "关于坐标格式",
      "formatDd": "十进制度 (DD)",
      "formatDms": "度分秒 (DMS)",
      "formatDdm": "度和十进制分 (DDM)",
      "formatDdShort": "DD",
      "formatDmsShort": "DMS",
      "formatDdmShort": "DDM",
      "longitude": "经度",
      "latitude": "纬度",
      "degrees": "度",
      "minutes": "分",
      "seconds": "秒",
      "hemisphere": "半球",
      "zoom": "缩放",
      "pitch": "倾斜角",
      "bearing": "方位角",
      "go": "前往",
      "invalid": "请输入有效的经度（−180 到 180）、纬度（−90 到 90）和缩放级别。",
      "invalidDms": "请输入有效的度、分（0 到 59）、秒（0 到 59）和缩放级别。",
      "invalidDdm": "请输入有效的度、十进制分（0 到小于 60）和缩放级别。"
    },
    "commandGroup": {
      "project": "项目",
      "addData": "添加数据",
      "processing": "处理",
      "controls": "控件",
      "view": "视图",
      "help": "帮助",
      "plugins": "插件",
      "settings": "设置"
    },
    "command": {
      "projectNew": "新建项目",
      "projectOpenFile": "从文件打开项目",
      "projectOpenUrl": "从 URL 打开项目",
      "projectSave": "保存项目",
      "projectSaveAs": "项目另存为…",
      "projectShare": "共享项目…",
      "projectCollaborate": "协作…",
      "projectPrint": "打印…",
      "addVectorLayer": "添加矢量图层",
      "addRasterLayer": "添加栅格图层",
      "addOsmPbfLayer": "添加 OSM PBF 图层",
      "addLayer": "添加{{name}}",
      "addStacLayer": "添加 STAC 图层",
      "addGeoparquetLayer": "添加 GeoParquet 图层",
      "addFlatgeobufLayer": "添加 FlatGeobuf 图层",
      "addPmtilesLayer": "添加 PMTiles 图层",
      "addZarrLayer": "添加 Zarr 图层",
      "addNetcdfLayer": "添加 NetCDF / HDF 图层",
      "addLidarLayer": "添加 LiDAR 图层",
      "addSplattingLayer": "添加高斯泼溅",
      "add3dTilesLayer": "添加 3D Tiles 图层",
      "addDuckdbLayer": "添加 DuckDB 图层",
      "whiteboxTools": "Whitebox 工具",
      "sqlWorkspace": "SQL 工作区",
      "pythonConsole": "Python 控制台",
      "notebook": "Jupyter Notebook",
      "dashboard": "仪表盘",
      "assistant": "AI 助手",
      "geocode": "地理编码地址",
      "modelBuilder": "批处理与模型",
      "planetaryComputer": "Planetary Computer",
      "earthEngine": "Earth Engine",
      "segmentation": "AI 分割",
      "objectDetection": "目标检测",
      "segmentEverything": "万物分割",
      "toggleControl": "切换{{name}}控件",
      "toggleAtmosphereEffects": "切换大气效果",
      "toggleDirections": "切换路线",
      "toggleSearch": "切换搜索",
      "toggleColorbar": "切换色带",
      "toggleLegend": "切换图例",
      "toggleHtmlPanel": "切换 HTML 面板",
      "toggleMeasure": "切换测量",
      "toggleBookmark": "切换书签",
      "toggleMinimap": "切换缩略图",
      "toggleViewState": "切换视图状态",
      "previousView": "上一个视图",
      "nextView": "下一个视图",
      "resetNorth": "重置方位角",
      "resetPitch": "重置倾斜角",
      "resetPitchBearing": "重置倾斜角和方位角",
      "setView": "设置视图",
      "viewComments": "查看评论",
      "zoomIn": "放大",
      "zoomOut": "缩小",
      "switchToLight": "切换到浅色模式",
      "switchToDark": "切换到深色模式",
      "keyboardShortcuts": "键盘快捷键",
      "website": "网站",
      "githubRepository": "GitHub 仓库",
      "diagnostics": "诊断",
      "giveFeedback": "提供反馈",
      "checkForUpdates": "检查更新",
      "about": "关于",
      "togglePlugin": "切换 {{name}}",
      "managePlugins": "管理插件",
      "styleManager": "样式管理器…"
    },
    "layerType": {
      "delimitedText": "分隔文本图层",
      "photos": "带地理标记的照片",
      "gpx": "GPX 图层",
      "mbtiles": "MBTiles 图层",
      "xyz": "XYZ 图层",
      "wms": "WMS 图层",
      "wfs": "WFS 图层",
      "wmts": "WMTS 图层",
      "ogcFeatures": "OGC API - Features",
      "ogcVectorTiles": "OGC 矢量瓦片",
      "arcgis": "ArcGIS 图层",
      "georss": "GeoRSS 图层",
      "video": "视频图层",
      "deckglViz": "Deck.gl 图层",
      "gltfModel": "3D 模型（glTF）",
      "postgres": "PostgreSQL 图层"
    },
    "conversion": {
      "vectorToVector": "矢量转矢量",
      "zipInputBrowserError": "压缩的 Shapefile 只能在 GeoLibre 桌面应用中转换。在浏览器中，请选择解压后的 .shp 文件及其对应的 .dbf、.shx 和 .prj 文件。",
      "browserOutputUnsupported": "在浏览器中，输出格式可以是 GeoJSON、CSV、GeoParquet、GeoPackage 或 Shapefile (.zip)。“.{{extension}}”输出需要使用 GeoLibre 桌面应用。",
      "outputExtensionRequired": "请为输出文件名添加扩展名以选择格式。",
      "readingWithDuckDb": "正在使用 DuckDB-WASM 读取 {{name}}",
      "readFeatures": "已从 {{name}} 读取 {{features}} 个要素",
      "savedFile": "已保存 {{name}}",
      "saveCanceled": "转换已完成；保存已取消。",
      "vectorToGeoparquet": "矢量转 GeoParquet",
      "vectorToFlatgeobuf": "矢量转 FlatGeobuf",
      "vectorToShapefile": "矢量转 Shapefile",
      "vectorToGeopackage": "矢量转 GeoPackage",
      "csvToGeoparquet": "CSV 转 GeoParquet",
      "vectorToPmtiles": "矢量转 PMTiles",
      "rasterToCog": "栅格转 COG",
      "rasterToPmtiles": "栅格转 PMTiles",
      "needsDesktop": "此转换需要 GeoLibre 桌面应用或运行中的 sidecar。",
      "runsInBrowserDuckDb": "转换在浏览器中使用 DuckDB-WASM 运行。",
      "runsInBrowserWriters": "转换在浏览器中使用 DuckDB-WASM 和内置写入器运行。",
      "runsInBrowserWasm": "转换在浏览器中使用 geolibre-wasm 运行。无需 sidecar。",
      "convertingWithWasm": "使用 geolibre-wasm 转换 {{name}}",
      "rasterShape": "读取 {{width}}×{{height}} 栅格，{{bands}} 个波段",
      "wroteCog": "已写入带概览的分块 COG（{{compression}}）",
      "notAGeoTiff": "此文件不是可读的 GeoTIFF。在浏览器中，栅格转 COG 仅读取 GeoTIFF；其他格式需要桌面应用。",
      "zoomRangeError": "缩放级别必须满足 0 ≤ 最小 ≤ 最大 ≤ {{max}}。",
      "colormap": "颜色映射",
      "resampling": "重采样",
      "colormapDefault": "默认 (viridis)",
      "zoomNative": "原始",
      "rasterToPmtilesDesc": "将栅格渲染为单个 PMTiles 档案，包含 Web Mercator PNG 瓦片，可直接用于云原生服务。单波段通过颜色映射渲染，因此多波段影像不会以真彩色绘制。完全在 WebAssembly 中运行，无需桌面应用或 sidecar。",
      "cogBrowserNote": "在浏览器中，8 位栅格保持其类型，其他所有类型（Int16 DEM、Float64 等）写为 Float32。桌面应用保留原始类型。",
      "noSidecarConversion": "{{kind}} 没有 sidecar 转换。",
      "minZoom": "最小缩放",
      "maxZoom": "最大缩放",
      "convertFailed": "无法转换此文件。",
      "notAGeoTiffRasterOnly": "此文件不是可读的 GeoTIFF。栅格转 PMTiles 仅读取 GeoTIFF，适用于网页和桌面应用。",
      "band": "波段",
      "bandError": "波段必须为正整数。",
      "bandOutOfRange": "波段 {{band}} 不存在；此栅格有 {{bands}} 个波段。",
      "runsInBrowserVectorEngines": "转换在浏览器中使用 DuckDB-WASM 运行，FlatGeobuf 输出使用 geolibre-wasm。",
      "vectorToVectorDesc": "在 DuckDB 空间扩展支持的任意矢量格式之间转换。输入和输出格式根据文件扩展名自动识别。桌面应用可写出任意格式（FlatGeobuf、GeoPackage、Shapefile、KML、GML 等）；浏览器可写出 GeoJSON、CSV、GeoParquet、GeoPackage、FlatGeobuf 和 Shapefile。",
      "vectorToVectorInputLabel": "输入矢量文件",
      "vectorToVectorOutputLabel": "输出矢量文件",
      "vectorToGeoparquetDesc": "将矢量数据集转换为按 Hilbert 曲线排序并压缩的 GeoParquet 文件，针对云原生范围请求进行了优化。",
      "vectorToGeoparquetInputLabel": "输入矢量文件",
      "vectorToGeoparquetOutputLabel": "输出 GeoParquet 文件",
      "vectorToFlatgeobufDesc": "将矢量数据集转换为按 Hilbert 曲线排序的 FlatGeobuf，并附带打包的空间索引，以实现快速的云原生访问。",
      "vectorToFlatgeobufInputLabel": "输入矢量文件",
      "vectorToFlatgeobufOutputLabel": "输出 FlatGeobuf 文件",
      "vectorToShapefileDesc": "将矢量数据集转换为 ZIP 压缩的 ESRI Shapefile（.shp/.shx/.dbf/.prj）。字段名将截断为 10 个字符。",
      "vectorToShapefileInputLabel": "输入矢量文件",
      "vectorToShapefileOutputLabel": "输出 ZIP 压缩的 Shapefile",
      "vectorToGeopackageDesc": "将矢量数据集转换为 GeoPackage（.gpkg），便于与 QGIS、ArcGIS 及其他 GIS 工具共享。",
      "vectorToGeopackageInputLabel": "输入矢量文件",
      "vectorToGeopackageOutputLabel": "输出 GeoPackage 文件",
      "csvToGeoparquetDesc": "根据经纬度列构建点几何，并写出按 Hilbert 曲线排序并压缩的 GeoParquet。",
      "csvToGeoparquetInputLabel": "输入 CSV 文件",
      "csvToGeoparquetOutputLabel": "输出 GeoParquet 文件",
      "vectorToPmtilesDesc": "将矢量数据集切片为单个 PMTiles 矢量瓦片归档，可直接用于云原生服务。",
      "vectorToPmtilesInputLabel": "输入矢量文件",
      "vectorToPmtilesOutputLabel": "输出 PMTiles 文件",
      "rasterToPmtilesInputLabel": "输入栅格文件",
      "rasterToPmtilesOutputLabel": "输出 PMTiles 文件",
      "rasterToCogDesc": "将栅格数据集转换为有效且压缩的云优化 GeoTIFF，带有内部分块和金字塔概视图。",
      "rasterToCogInputLabel": "输入栅格文件",
      "rasterToCogOutputLabel": "输出 COG 文件",
      "outputFileName": "输出文件名",
      "shapefileSidecarHint": "对于 Shapefile，请将 .shp 与配套的 .dbf、.shx 和 .prj 文件一并选择。",
      "longitudeColumn": "经度列",
      "latitudeColumn": "纬度列",
      "compression": "压缩方式",
      "rowGroupSize": "行组大小",
      "layerName": "图层名称",
      "noOutput": "暂无输出。",
      "fallbackTitle": "格式转换"
    },
    "vectorTool": {
      "buffer": "缓冲区",
      "centroids": "质心",
      "convexHull": "凸包",
      "dissolve": "融合",
      "boundingBox": "边界框",
      "simplify": "简化",
      "clip": "裁剪",
      "intersection": "相交",
      "difference": "差集",
      "union": "联合",
      "spatialJoin": "空间连接",
      "attributeJoin": "属性连接",
      "selectByValue": "按属性选择",
      "selectByLocation": "按位置选择",
      "randomExtract": "随机抽取",
      "reproject": "重投影",
      "explode": "打散",
      "aggregate": "按属性聚合",
      "smooth": "平滑",
      "grid": "规则格网",
      "voronoi": "泰森多边形 / 德劳内三角网",
      "cellSectors": "基站覆盖扇区",
      "dggsGenerator": "DGGS 生成器",
      "dggsBinning": "DGGS 分箱统计",
      "dggsCompact": "DGGS 压缩",
      "trajectorySpeed": "轨迹速度",
      "detectStops": "检测停留点",
      "spaceTimeProximity": "时空邻近性",
      "checkValidity": "检查有效性",
      "fixGeometries": "修复几何",
      "checkTopologyRules": "检查拓扑规则",
      "fixTopology": "修复拓扑"
    },
    "networkTool": {
      "isochrone": "等时圈 / 服务区",
      "odMatrix": "OD 成本矩阵",
      "sequentialRoute": "顺序路线（导航路线）"
    },
    "statisticsTool": {
      "globalMoransI": "全局莫兰指数",
      "localMoransI": "局部莫兰指数 (LISA)",
      "getisOrd": "Getis-Ord Gi* 热点分析",
      "averageNearestNeighbor": "平均最近邻",
      "kernelDensity": "核密度估计（热力图）",
      "emergingHotSpot": "新兴热点分析（时空立方体）"
    },
    "rasterTool": {
      "hillshade": "山体阴影",
      "slope": "坡度",
      "aspect": "坡向",
      "reproject": "重投影",
      "resample": "重采样",
      "clipExtent": "按范围裁剪",
      "clipMask": "按掩膜图层裁剪",
      "polygonize": "栅格转面",
      "contour": "等值线",
      "interpolate": "插值（IDW / 克里金）",
      "zonal": "分区统计",
      "rasterCalc": "栅格计算器",
      "spectralIndex": "光谱指数",
      "invalidSpectralIndex": "无效的光谱指数。",
      "reclassify": "重分类",
      "mosaic": "镶嵌 / 合并",
      "focal": "焦点统计",
      "inputRaster": "输入栅格",
      "inputRasterA": "输入栅格 A",
      "inputRaster1": "第一个栅格",
      "inputPoints": "输入点（GeoJSON）",
      "engine": "引擎",
      "engineClient": "客户端（浏览器）",
      "engineSidecar": "Sidecar（rasterio/GDAL）",
      "clientHint": "在您的浏览器中计算并将结果添加到地图。对于大型栅格或地理坐标系地形，建议使用 Sidecar。",
      "switchToClientHint": "或将引擎切换为客户端以在浏览器中运行此工具。",
      "chooseGeoTiff": "选择一个 GeoTIFF",
      "downloadGeoTiff": "下载 GeoTIFF",
      "chooseInputRaster": "请选择输入栅格。",
      "useAddedLayer": "使用地图上的图层",
      "useAddedLayerPlaceholder": "选择一个图层…",
      "loadingLayer": "正在加载图层…",
      "layerLoadError": "无法加载所选图层。",
      "runningInBrowser": "正在浏览器中运行“{{tool}}”...",
      "loadedRaster": "已加载栅格：{{width}}×{{height}}，{{bands}} 个波段。",
      "computedInBrowser": "已在浏览器中计算“{{tool}}”。",
      "addedToMap": "已将“{{name}}”添加到地图。",
      "largeRasterWarning": "大型栅格（{{mp}} 百万像素）；计算期间浏览器可能会暂时无响应。",
      "mapAddFailed": "添加到地图失败（结果仍可下载）：{{message}}",
      "mapAddError": "无法将结果添加到地图。",
      "runError": "无法运行栅格工具。",
      "saveError": "无法保存结果。",
      "dialogTitle": "栅格工具",
      "dialogDescription": "在 Python sidecar（rasterio/GDAL）上运行常用的栅格操作；若没有可用的 sidecar，则在浏览器中运行。",
      "outputFile": "输出文件",
      "noOutput": "暂无输出。",
      "errorConnect": "无法连接到 sidecar。",
      "needsDesktopSidecar": "栅格工具需要 GeoLibre 桌面应用并运行 sidecar。",
      "errorPoll": "无法查询作业状态。",
      "errorStartSidecar": "无法启动 GeoLibre sidecar。",
      "errorStartTool": "无法启动栅格工具。"
    },
    "mapControl": {
      "navigation": "导航",
      "fullscreen": "全屏",
      "compass": "指南针",
      "geolocate": "定位",
      "globe": "地球",
      "terrain": "地形",
      "scale": "比例尺",
      "attribution": "归属信息",
      "logos": "徽标",
      "logo": "MapLibre 徽标",
      "maptoolkitLogo": "Maptoolkit 徽标",
      "maptoolkitLogoHint": "添加 Maptoolkit 底图以显示其徽标。"
    },
    "position": {
      "topLeft": "左上",
      "topRight": "右上",
      "bottomLeft": "左下",
      "bottomRight": "右下"
    },
    "item": {
      "newEllipsis": "新建...",
      "openFrom": "打开来源",
      "fileEllipsis": "文件...",
      "urlEllipsis": "URL...",
      "galleryEllipsis": "图库...",
      "openRecent": "打开最近项目",
      "projectHistoryEllipsis": "历史记录...",
      "noRecentProjects": "无最近项目",
      "removeFromRecent": "从最近项目中移除 {{name}}",
      "clearRecentProjects": "清除最近项目",
      "duplicate": "复制项目",
      "saveAsEllipsis": "另存为...",
      "saveAsTemplateEllipsis": "另存为模板...",
      "shareEllipsis": "共享...",
      "shareHostUnavailable": "不可用：此部署的共享服务器地址无效。",
      "exportHtmlEllipsis": "导出为 HTML...",
      "htmlFile": "HTML",
      "collaborateEllipsis": "协作...",
      "printEllipsis": "打印...",
      "printLayoutEllipsis": "打印布局...",
      "offlineBasemapEllipsis": "离线底图...",
      "undo": "撤销",
      "redo": "重做",
      "selectByExpressionEllipsis": "按表达式选择...",
      "selectByLocationEllipsis": "按位置选择...",
      "zoomToSelection": "缩放至所选内容",
      "invertSelection": "反转选择",
      "clearSelection": "清除选择",
      "exportSelection": "将所选要素导出为图层",
      "previousView": "上一个视图",
      "nextView": "下一个视图",
      "resetOrientation": "重置方向",
      "resetPitch": "重置倾斜角",
      "resetBearing": "重置方位角",
      "resetPitchBearing": "重置倾斜角和方位角",
      "setView": "设置视图…",
      "splitView": "分屏视图",
      "splitViewSingle": "单个地图",
      "splitViewTwoColumns": "两列",
      "splitViewTwoRows": "两行",
      "splitViewGrid2x2": "2 × 2 网格",
      "splitViewGrid2x3": "2 × 3 网格",
      "splitViewGrid3x3": "3 × 3 网格",
      "splitViewSync": "同步视图",
      "viewInGoogleMaps": "在 Google 地图中查看",
      "viewInGoogleEarth": "在 Google Earth 中查看",
      "zoomIn": "放大",
      "zoomOut": "缩小",
      "sectionFiles": "文件",
      "sectionWebServices": "网络服务",
      "sectionCloudFormats": "云格式",
      "section3dLayers": "3D 图层",
      "sectionDatabases": "数据库",
      "georeferencing": "地理配准",
      "vectorLayer": "矢量图层",
      "cadLayer": "CAD（DXF/DWG）图层",
      "gdbLayer": "文件地理数据库（GDB）",
      "rasterLayer": "栅格图层",
      "osmPbfLayer": "OSM PBF 图层",
      "stacLayer": "STAC 图层",
      "geoparquetLayer": "GeoParquet 图层",
      "flatgeobufLayer": "FlatGeobuf 图层",
      "pmtilesLayer": "PMTiles 图层",
      "basemapExtract": "提取离线底图",
      "zarrLayer": "Zarr 图层",
      "netcdfHdf": "NetCDF / HDF",
      "lidarLayer": "LiDAR 图层",
      "splattingLayer": "高斯泼溅",
      "threeDTilesLayer": "3D Tiles 图层",
      "duckdbLayer": "DuckDB 图层",
      "whitebox": "Whitebox",
      "geocode": "地理编码地址",
      "modelBuilder": "批处理与模型",
      "processingHistory": "历史记录",
      "conversion": "转换",
      "vector": "矢量",
      "network": "网络",
      "statistics": "空间统计",
      "raster": "栅格",
      "hydrology": "水文",
      "lidar": "LiDAR",
      "terrain": "地形",
      "remoteSensing": "遥感",
      "projection": "投影",
      "geolibre": "GeoLibre",
      "subGroupGeometry": "几何",
      "subGroupOverlay": "叠加",
      "subGroupJoin": "连接",
      "subGroupSelect": "选择",
      "subGroupDggs": "DGGS",
      "subGroupH3": "H3",
      "subGroupMovement": "移动与时间",
      "subGroupDataQuality": "数据质量",
      "subGroupTerrain": "地形",
      "subGroupReproject": "重投影",
      "subGroupClip": "裁剪",
      "subGroupRasterToVector": "栅格转矢量",
      "subGroupVectorToRaster": "矢量转栅格",
      "subGroupAnalysis": "分析",
      "mapControls": "地图控件",
      "fieldCollection": "野外采集...",
      "gpsTracking": "GPS 跟踪...",
      "recordTour": "录制地图导览...",
      "recordVideo": "录制视频...",
      "atmosphereEffects": "大气效果",
      "atmosphereEnabled": "已启用",
      "spinGlobe": "旋转地球",
      "graticule": "经纬网",
      "weather": "天气",
      "weatherTooltip": "叠加可播放动画的近实时天气图层。",
      "weatherPlay": "播放动画",
      "weatherPause": "暂停动画",
      "clouds": "云层",
      "cloudsShow": "显示云层",
      "cloudsTooltip": "叠加近实时的 NASA 卫星云图，类似 Google Earth。添加一个可逐日播放动画的图层。",
      "cloudsDate": "日期",
      "precipitation": "降水",
      "precipitationShow": "显示降水",
      "precipitationTooltip": "近实时 RainViewer 天气雷达。播放最近约2小时的动画。",
      "precipitationTime": "时间",
      "sun": "太阳",
      "sunTooltip": "模拟任意日期和时间下太阳的位置及昼夜分界线。",
      "routeAnimation": "路线动画",
      "routeAnimationTooltip": "沿线图层为标记添加动画，支持播放/暂停、速度、轨迹和相机跟随。",
      "flightSimulator": "飞行模拟器",
      "flightSimulatorTooltip": "使用键盘控制在地形上空飞行，就像飞行模拟器一样。",
      "spinGlobeBoundsTitle": "范围已锁定",
      "spinGlobeBoundsDesc": "地图范围被锁定时，地球无法旋转。",
      "spinGlobeBoundsHint": "解锁范围后可让地球自由旋转。您可以随时在“设置”中重新锁定。",
      "spinGlobeBoundsUnlock": "解锁范围并旋转",
      "directions": "路线",
      "directionsTooltip": "路由会将您的途经点发送到公共 OSRM 演示服务器 (router.project-osrm.org)。",
      "search": "搜索",
      "colorbar": "色带",
      "legend": "图例",
      "html": "HTML",
      "measure": "测量",
      "bookmark": "书签",
      "minimap": "缩略图",
      "viewState": "视图状态",
      "activatePlugin": "激活插件",
      "deactivate": "停用",
      "activate": "激活",
      "position": "位置",
      "webServices": "网络服务",
      "dggs": "DGGS",
      "commandPalette": "命令面板",
      "openProjectFromUrl": "从 URL 打开项目",
      "importQgisProjectEllipsis": "导入 QGIS 项目…",
      "importArcgisProjectEllipsis": "导入 ArcGIS Pro 项目…",
      "arcgisImportComplete": "ArcGIS Pro 项目已导入",
      "arcgisImportWarnings_other": "项目已导入，但有 {{count}} 个图层无法加载。",
      "arcgisUnknownLayerType": "未知",
      "qgisImportComplete": "QGIS 项目已导入",
      "qgisImportWarnings_other": "项目已导入，但有 {{count}} 个图层无法加载。",
      "qgisUnknownProvider": "未知",
      "qgisImportReason": {
        "non-vector": "首个版本仅支持基于文件的矢量图层。",
        "provider": "不支持 {{provider}} 数据提供程序。",
        "missing-source": "该图层没有可读取的数据源。",
        "format": "不支持该图层的文件格式。",
        "remote-file": "暂不支持远程 QGIS 文件数据源。",
        "network-path": "出于安全原因，不加载网络共享路径。",
        "browser-local-file": "已引用该本地文件，但浏览器无法重新打开 QGIS 数据路径。请使用 GeoLibre Desktop 加载。",
        "browser-local-raster": "该栅格通过本地路径引用。请使用 GeoLibre Desktop 加载。"
      },
      "openProjectFromUrlDesc": "加载 `.geolibre.json` 项目并将其添加到最近项目。",
      "projectUrl": "项目 URL",
      "opening": "正在打开...",
      "open": "打开",
      "somethingWentWrong": "出现了一些问题",
      "dismiss": "关闭",
      "saveProjectAsTitle": "项目另存为",
      "saveProjectAsDesc": "请输入文件名。点击“保存”后，项目将下载到您浏览器的下载文件夹。",
      "embedVectorTitle": "是否嵌入本地矢量数据？",
      "embedVectorDesc": "此项目包含 {{count}} 个从您计算机加载的本地矢量图层。项目重新打开时浏览器无法重新读取这些文件，因此必须将其数据嵌入项目文件中才能恢复。嵌入会为文件增加约 {{size}} 的大小。",
      "embedVectorDescDesktop": "此项目包含 {{count}} 个从您计算机加载的本地矢量图层。您可以嵌入它们的数据以使项目自包含（增加约 {{size}}），也可以保存文件引用，在项目重新打开时从磁盘重新加载。引用可保持文件较小，但若源文件之后被移动或删除则会失效。",
      "embedVectorEmbedButton": "嵌入数据",
      "embedVectorReferenceButton": "保存文件引用",
      "embedVectorSkipButton": "不含数据保存",
      "saveProjectFileName": "文件名",
      "saveProjectFileNamePlaceholder": "my-project.geolibre.json",
      "exportHtmlAsTitle": "导出为交互式 HTML",
      "exportHtmlAsDesc": "请输入文件名。点击“保存”后，HTML 页面将下载到您浏览器的下载文件夹。",
      "exportHtmlFileName": "文件名",
      "exportHtmlFileNamePlaceholder": "my-map.html",
      "vectorDataFilter": "矢量数据",
      "directionsNoticeTitle": "路线功能使用公共路由服务器",
      "directionsNoticeDesc": "开启路线功能会将您放置的途经点发送到公共 OSRM 演示服务器 (router.project-osrm.org) 以计算路线——这些请求会将您的坐标发送到设备之外。该演示服务器有速率限制，且仅支持驾车路线。",
      "reverseGeocode": "反向地理编码",
      "reverseGeocodeTooltip": "点击地图以查询地址。点击处的坐标会被发送到已配置的地理编码提供方（默认为公共 Nominatim 服务；可在“设置 → 地理编码”中更改）。",
      "reverseGeocodeNoticeTitle": "反向地理编码使用外部服务",
      "reverseGeocodeNoticeDesc": "开启反向地理编码会将您点击的每个点的坐标发送到已配置的地理编码提供方（默认为公共 Nominatim 服务）以解析地址——这些请求会将您的坐标发送到设备之外。您可以在“设置 → 地理编码”中选择其他提供方。",
      "networkNoticeTitle": "网络分析使用外部路由服务器",
      "networkNoticeDesc": "运行网络分析工具会将您输入点的坐标发送到路由服务器，以计算等时圈、成本矩阵和路线。",
      "networkNoticePrivacyHeading": "数据隐私",
      "networkNoticePrivacy": "您的输入坐标将离开本设备，并发送到位于 valhalla1.openstreetmap.de 的公共 Valhalla 服务器。若您的项目受数据隐私或数据主权规则约束，请点击取消。",
      "networkNoticePrivacyCustom": "您的输入坐标将离开本设备，并发送到已配置的路由服务器（{{endpoint}}）。若您的项目受数据隐私或数据主权规则约束，请点击取消。",
      "networkNoticePerformanceHeading": "性能与限制",
      "networkNoticePerformance": "公共服务器免费但有速率限制，因此大批量的点可能会被限流或失败。若需大量使用，请运行您自己的 Valhalla 服务器，并在工具的“路由服务器 (Valhalla)”字段中输入其 URL（或在“设置 → 环境变量”中设置 VITE_ROUTING_ENDPOINT 使其成为默认值）。",
      "continue": "继续",
      "largeOsmPbfTitle": "大型 OSM PBF 文件",
      "largeOsmPbfDesc": "此文件约为 {{sizeMb}} MB。解析它会将每个要素转换为内存中的 GeoJSON，这可能很慢，并且在浏览器中可能占用大量内存。是否继续？",
      "largeVectorDesc": "{{name}} 约有 {{count}} 个要素。加载它会将每个要素转换为内存中的 GeoJSON，可能会使应用变慢或冻结。是否继续？",
      "addOsmPbfLayerTitle": "添加 OSM PBF 图层",
      "addOsmPbfLayerDesc": "加载 OpenStreetMap .osm.pbf 文件。它会在您的浏览器中解析，并拆分为独立的点、线和面图层。",
      "urlLabel": "URL",
      "osmPbfUrlPlaceholder": "https://example.com/region.osm.pbf",
      "osmPbfSampleLabel": "拉斯维加斯",
      "osmPbfUrlHint": "远程 URL 可在桌面应用中加载；在浏览器中，服务器必须允许跨域请求 (CORS)。",
      "chooseLocalFile": "选择本地文件…",
      "loadFromUrl": "从 URL 加载",
      "loadingOsmPbf": "正在加载 OSM PBF…",
      "loadingOsmPbfDesc": "正在解析文件并将要素转换为 GeoJSON。此过程在后台运行，对于大型提取数据可能需要一些时间。",
      "loadingOsmPbfProgress": "正在将要素转换为 GeoJSON… 已处理 {{processed}} / {{total}} 个 OSM 实体。",
      "projectName": "项目名称",
      "storymapEllipsis": "故事地图...",
      "arcgisImportReason": {
        "layer-type": "不支持 {{layerType}} 图层类型。",
        "missing-source": "该图层没有可读取的本地数据源。",
        "format": "不支持该图层的数据格式。",
        "network-path": "出于安全原因，不加载网络共享路径。",
        "service": "暂不支持项目中的 ArcGIS 服务图层。",
        "browser-local-file": "已引用该本地文件，但浏览器无法重新打开 ArcGIS Pro 数据路径。请使用 GeoLibre Desktop 加载。",
        "map-extent": "保存的地图范围使用了 GeoLibre 无法转换的坐标系，因此地图以默认视图打开。",
        "nesting": "该分组嵌套层级过深，或项目又引用了已包含它的分组。"
      }
    },
    "plugin": {
      "maplibre-gl-annotations": "注释",
      "maplibre-gl-streetview": "街景",
      "maplibre-gl-time-slider": "时间滑块",
      "geolibre-timelapse": "延时影像",
      "maplibre-gl-esri-wayback": "历史影像",
      "maplibre-gl-openaerialmap": "OpenAerialMap",
      "maplibre-gl-arcgis-hub": "ArcGIS Hub",
      "geolibre-stac-catalogs": "STAC 目录",
      "maplibre-gl-source-coop": "Source Cooperative",
      "maplibre-gl-natural-earth": "Natural Earth",
      "maplibre-gl-swipe": "图层滑动对比",
      "geolibre-elevation-profile": "高程剖面",
      "maplibre-gl-basemap-control": "底图",
      "maplibre-layer-control": "图层控制",
      "maplibre-gl-huggingface": "Hugging Face",
      "carto-light": "Carto Light 底图",
      "geolibre-flight-simulator": "飞行模拟器",
      "geolibre-route-animation": "路线动画",
      "geolibre-sun": "太阳模拟",
      "maplibre-atmosphere-effects": "大气效果",
      "maplibre-deckgl-viz": "Deck.gl 图层",
      "maplibre-gl-clouds": "云层",
      "maplibre-gl-components": "组件",
      "maplibre-gl-directions": "路线",
      "maplibre-gl-earthdata-gis": "Earthdata GIS",
      "maplibre-gl-enviroatlas": "US EPA EnviroAtlas",
      "maplibre-gl-fema-wms": "FEMA NFHL",
      "maplibre-gl-geo-editor": "GeoEditor",
      "maplibre-gl-geoagent": "GeoAgent",
      "maplibre-gl-geolens": "GeoLens",
      "maplibre-gl-graticule": "经纬网",
      "maplibre-gl-mapillary": "Mapillary",
      "maplibre-gl-nasa-earthdata": "NASA Earthdata",
      "maplibre-gl-national-map": "USGS National Map",
      "maplibre-gl-overture-maps": "Overture Maps",
      "maplibre-gl-precipitation": "降水",
      "maplibre-gl-usgs-lidar": "USGS LiDAR",
      "maplibre-h3-grid": "H3 网格",
      "maplibre-s2-grid": "S2",
      "maplibre-a5-grid": "A5",
      "maplibre-dggrid": "DGGRID",
      "maplibre-dggal": "DGGAL",
      "maplibre-olc": "OLC",
      "maplibre-geohash": "Geohash",
      "maplibre-tilecode": "Tilecode",
      "maplibre-reverse-geocode": "反向地理编码",
      "osm-basemap": "OpenStreetMap 底图"
    },
    "fileDrop": {
      "overlayTitle": "将矢量或栅格文件拖放到此处以添加图层",
      "overlaySubtext": "您的数据会立即添加到图层面板。",
      "addedLayer": "已将“{{name}}”添加到图层面板。",
      "addedVectorLayers_other": "已将 {{count}} 个矢量图层添加到图层面板。",
      "addedRasterLayers_other": "已将 {{count}} 个栅格图层添加到图层面板。",
      "addedBoth": "已将 {{vector}} 和 {{raster}} 添加到图层面板。",
      "bothVectorLayers_other": "{{count}} 个矢量图层",
      "bothRasterLayers_other": "{{count}} 个栅格图层"
    },
    "error": {
      "couldNotOpenProject": "无法打开项目。",
      "couldNotImportQgisProject": "无法导入 QGIS 项目。",
      "couldNotImportArcgisProject": "无法导入 ArcGIS Pro 项目。",
      "invalidProjectUrl": "请输入有效的 HTTP 或 HTTPS 项目 URL。",
      "couldNotOpenProjectUrl": "无法打开项目 URL。",
      "couldNotOpenRecentProject": "无法打开最近的项目。",
      "couldNotLoadRecentProject": "无法加载最近的项目。",
      "couldNotSaveProject": "无法保存项目。",
      "couldNotExportHtml": "无法将项目导出为 HTML。",
      "osmPbfNoFeatures": "在此 OSM PBF 文件中未找到点、线或面要素。",
      "couldNotLoadOsmPbf": "无法加载 OSM PBF 文件。",
      "osmPbfLoadFailedWithHint": "{{message}} 如果这是 Mapbox 矢量瓦片 (.pbf)，则无法作为 OSM 提取文件加载。",
      "osmPbfTooLarge": "此 OSM 提取文件过大，加载时内存或时间不足。请尝试使用更小的区域，或先使用 osmium-tool 或 QGIS 等工具对文件进行预筛选后再加载。",
      "couldNotOpenOsmPbf": "无法打开 OSM PBF 文件。",
      "invalidOsmPbfUrl": "请输入指向 .osm.pbf 文件的有效 http(s) URL。",
      "couldNotDownloadOsmPbf": "无法下载 OSM PBF 文件。",
      "scenegraphModelUrlRequired": "请输入 glTF/GLB 模型 URL。",
      "scenegraphInvalidLngLat": "请输入有效的经度和纬度。",
      "scenegraphOutOfRange": "经度必须介于 -180 到 180 之间，纬度必须介于 -90 到 90 之间。",
      "scenegraphNoPointFeatures": "此 GeoJSON 中没有可用于放置模型的点要素。"
    },
    "scenegraph": {
      "modelUrl": "glTF / GLB 模型 URL",
      "placement": "放置方式",
      "placementSingle": "单一位置",
      "placementData": "从点数据",
      "longitude": "经度",
      "latitude": "纬度",
      "scale": "缩放比例",
      "bearing": "方位角°",
      "altitude": "海拔 米"
    },
    "sqlWorkspace": {
      "description": {
        "postgis": "对已加载的图层运行 PostGIS SQL。已加载 PostGIS 扩展，因此可以使用 ST_* 函数。首次运行会加载约 19 MB 的数据库引擎。",
        "duckdb": "对已加载的图层、文件和 URL 运行 DuckDB SQL。已加载 spatial 扩展，因此可以使用 ST_* 函数。支持云 URL（s3://、gs://、az://）访问公开数据。",
        "sedona": "对已加载的图层运行 Apache Sedona 空间 SQL。在浏览器中通过 CereusDB（SedonaDB 的 WebAssembly 构建版本）运行；在桌面版中，如果安装了可选的 sedona 扩展，则使用 SedonaDB Sidecar。可以使用 ST_* 函数。"
      },
      "title": "SQL 工作区",
      "engine": "SQL 引擎",
      "resize": "调整 SQL 工作区大小",
      "resizeEditor": "调整编辑器和结果窗格大小",
      "collapse": "折叠 SQL 工作区",
      "expand": "展开 SQL 工作区",
      "close": "关闭 SQL 工作区",
      "run": "运行",
      "runHint": "运行 (Ctrl/Cmd+Enter)",
      "clear": "清除",
      "completions": "自动补全",
      "placeholder": "在此输入 SQL · Ctrl/Cmd+Enter 运行 · Tab 或 Ctrl+Space 自动补全",
      "resultsPlaceholder": "运行查询以在此查看结果。",
      "queryableHint": "可查询的图层：{{names}}",
      "queryableLayers": "可查询的图层：",
      "queryLabel": "SQL 查询",
      "engineOption": "引擎：{{name}}",
      "sampleQueries": "示例查询…",
      "sampleQueriesLabel": "插入示例查询",
      "history": "历史记录…",
      "historyLabel": "重用历史记录中的查询",
      "sampleForLayer": "图层的示例查询…",
      "sampleForLayerLabel": "为图层插入示例查询",
      "noLayersEngine": "尚无矢量图层以表的形式加载。请加载矢量图层以使用 {{engine}} 查询它。",
      "noLayersReaders": "尚无矢量图层以表的形式加载。您仍可以使用 read_parquet()、read_csv_auto() 或 ST_Read() 读取文件和 URL。",
      "layerName": "图层名称",
      "layerNamePlaceholder": "图层名称（可选）",
      "addAsLayer": "添加为图层",
      "exportCsv": "导出 CSV",
      "exportGeoParquet": "导出 GeoParquet",
      "addedAsLayer_other": "已将 {{count}} 个要素以“{{name}}”的名称添加到地图。",
      "addAsQueryLayer": "添加为查询图层",
      "addAsQueryLayerHint": "将结果添加为动态图层，刷新时会重新运行此 SQL",
      "addedAsQueryLayer_other": "已将 {{count}} 个要素作为查询图层“{{name}}”添加到地图。可在图层面板中刷新以重新运行 SQL。",
      "savedAs": "已将 {{label}} 保存为 {{name}}。",
      "noRows": "语句已执行。未返回任何行。",
      "showingRows": "显示 {{total}} 行中的前 {{shown}} 行。导出以查看全部内容。",
      "rowsCount_other": "{{count}} 行",
      "columnsCount_other": "{{count}} 列",
      "samples": {
        "countriesGeom": "带几何的国家",
        "attributesOnly": "仅属性（无几何）",
        "populationByContinent": "按大洲统计人口（聚合）",
        "mostPopulous": "人口最多的国家（几何）",
        "countryCentroids": "国家质心（空间）",
        "largestByArea": "按面积排列最大的国家（空间）",
        "postgisVersion": "PostGIS 版本",
        "makePoint": "创建一个点（几何）",
        "firstRows": "图层的前几行",
        "featureCount": "要素数量",
        "layerCentroids": "图层的质心（空间）",
        "bufferFeatures": "将要素缓冲 0.01 度（空间）",
        "boundingBox": "图层的边界框（空间）",
        "bufferPoint": "缓冲一个点（空间）",
        "areaPerFeature": "每个要素的面积（空间）"
      }
    }
  },
  "selection": {
    "byExpressionTitle": "按表达式选择",
    "byExpressionDescription": "选择属性匹配布尔表达式的要素。匹配结果将成为当前选择集，并在地图和属性表中高亮显示。",
    "byLocationTitle": "按位置选择",
    "byLocationDescription": "根据要素与另一图层要素的空间关系进行选择。",
    "targetLayer": "从以下图层选择要素",
    "referenceLayer": "与以下图层的要素比较",
    "predicate": "当要素满足",
    "predicateIntersects": "相交",
    "predicateWithin": "位于其内",
    "predicateContains": "包含",
    "predicateDisjoint": "相离（无交集）",
    "mode": "修改当前选择的方式",
    "modeNew": "创建新选择",
    "modeAdd": "添加到当前选择",
    "modeRemove": "从当前选择中移除",
    "modeIntersect": "在当前选择内选择",
    "expression": "表达式",
    "expressionPlaceholder": "[\">=\", [\"get\", \"population\"], 100000]",
    "expressionTarget": "选择过滤器",
    "openBuilder": "表达式构建器...",
    "invalidExpression": "请输入有效的布尔表达式。",
    "select": "选择要素",
    "noLayers": "请添加包含要素的矢量图层以进行选择。",
    "needTwoLayers": "按位置选择需要两个包含要素的矢量图层。",
    "summary": "已选择 {{selected}}/{{total}} 个要素（匹配 {{matched}} 个）。",
    "evaluationErrors": "{{count}} 个要素无法求值，未被匹配。",
    "unevaluableDisjoint": "{{count}} 个要素因几何无法求值而被排除。",
    "tooManyPairs": "此比较需要 {{pairs}} 次要素对测试（上限 {{limit}}）。请改用“处理 → GeoLibre → 矢量 → 按位置选择”并选择 Sidecar 引擎。",
    "exportedLayerName": "{{name}}（选择集）"
  },
  "loadEditorFeatures": {
    "menuItem": "加载要素到编辑器…",
    "title": "加载要素到编辑器",
    "collapse": "折叠面板",
    "expand": "展开面板",
    "description": "将当前地图视图中可见的矢量要素加载到 GeoEditor 进行编辑，然后将全部要素或仅您所做的更改保存为 GeoJSON。",
    "vectorLayer": "矢量图层",
    "selectPlaceholder": "选择一个图层…",
    "refresh": "刷新图层列表",
    "noLayers": "当前视图中没有矢量图层。请添加矢量图层，或平移到具有矢量要素的底图区域，然后刷新。",
    "editSessionActive": "请先完成就地几何编辑（图层面板 → 完成几何编辑），再在此处加载或保存要素。",
    "editorName": "编辑者姓名",
    "editorNamePlaceholder": "您的姓名（可选）",
    "loadFeatures": "加载要素",
    "loading": "正在加载要素…",
    "selectLayer": "请先选择一个图层。",
    "noneInView": "当前视图中未找到该图层的任何要素。",
    "editorUnavailable": "无法激活 GeoEditor。请等待地图完全加载后重试。",
    "noEditable": "在当前视图中未找到该图层的任何可编辑要素。",
    "loaded": "已从“{{layer}}”加载 {{count}} 个要素。",
    "appended": "已从“{{layer}}”追加 {{count}} 个要素。",
    "loadedWithDropped": "{{message}}（跳过了 {{dropped}} 个无效要素）",
    "loadFailed": "加载要素到编辑器失败。",
    "confirmExisting": "编辑器中已存在 {{count}} 个要素。是追加到它们，还是丢弃并替换？",
    "tooMany": "加载 {{count}} 个要素可能会使编辑器响应变慢。是否仍然加载？",
    "loadAnyway": "仍然加载",
    "append": "追加",
    "appendHint": "将新要素添加到现有要素旁边。",
    "discard": "丢弃并替换",
    "discardHint": "移除现有要素并加载新要素。",
    "noChanges": "尚无更改可保存。",
    "nothingToSave": "没有要保存的要素。",
    "saved": "已保存 {{count}} 个要素。",
    "savedChanges": "已保存更改：新增 {{added}} 个，修改 {{modified}} 个，删除 {{deleted}} 个。",
    "saveFailed": "保存要素失败。",
    "saveChanges": "保存更改",
    "saveChangesHint": "仅保存您新增、编辑或删除的要素。",
    "saveAll": "全部保存"
  },
  "geocode": {
    "title": "地理编码地址",
    "description": "将 CSV 地址列表进行地理编码，转换为点图层。每一行匹配成功的记录都会成为一个点，包含原始列以及解析出的坐标和匹配分数。",
    "chooseFile": "选择 CSV 文件",
    "noFile": "未选择 CSV 文件。",
    "fileLoaded": "{{name}}（{{count}} 行）",
    "provider": "地理编码提供方",
    "providerHint": "API 密钥和端点在“设置”中管理。",
    "apiKeyRequired": "{{provider}} 需要 API 密钥。请在“设置”中添加以获取结果。",
    "corsNote": "Google 官方并不允许浏览器直接请求其地理编码 API；除非通过同源代理提供服务，否则请求可能会被阻止。",
    "addressColumn": "地址列",
    "run": "开始地理编码",
    "cancel": "取消",
    "outputPlaceholder": "进度将显示在此处。",
    "usingEndpoint": "正在使用 {{endpoint}}",
    "usingProvider": "正在使用 {{provider}}（{{endpoint}}）",
    "rowCapWarning": "为遵守公共 Nominatim 使用政策，仅对前 {{cap}} 行进行地理编码。请配置自托管端点以处理更大批量。",
    "skippedEmpty": "已跳过 {{count}} 行地址为空的记录。",
    "progress": "正在对第 {{current}} / {{total}} 行进行地理编码：{{address}}",
    "summary": "已对 {{total}} 行中的 {{matched}} 行完成地理编码；{{failed}} 行未匹配。",
    "failedRows": "未匹配的行：{{rows}}",
    "noMatches": "没有任何行可以完成地理编码。",
    "cancelledNoRows": "在完成任何行的地理编码之前已取消。",
    "cancelled": "已取消。已添加 {{matched}} 行匹配结果。",
    "error": "错误：{{message}}",
    "reverseLookingUp": "正在查询地址...",
    "reverseNoAddress": "未找到地址。",
    "reverseCopyAddress": "复制地址",
    "reverseFailed": "反向地理编码失败。"
  },
  "graticule": {
    "title": "经纬网",
    "controlTitle": "经纬网设置",
    "gridType": "网格类型",
    "typeGeographic": "地理坐标（经纬度）",
    "typeUtm": "UTM（东距/北距）",
    "spacing": "间距",
    "spacingAuto": "自动（按缩放级别）",
    "spacingFixed": "固定间隔",
    "interval": "间隔 (°)",
    "intervalMeters": "间隔 (m)",
    "lineColor": "线条颜色",
    "lineWidth": "线宽",
    "lineOpacity": "线条不透明度",
    "dashedLines": "虚线",
    "showLabels": "显示标签",
    "labelFormat": "标签格式",
    "formatDecimal": "十进制度",
    "formatDms": "度/分/秒",
    "labelEdges": "标签边缘",
    "edgesLeftBottom": "左侧 + 底部",
    "edgesAll": "全部边缘",
    "labelColor": "标签颜色",
    "labelSize": "标签大小"
  },
  "h3Plugin": {
    "title": "H3 网格",
    "controlTitle": "H3 网格设置",
    "autoResolution": "自动分辨率",
    "resolution": "分辨率",
    "cellCount": "视图内有 {{count}} 个单元格",
    "tooManyCells": "当前视图超过了 {{limit}} 个单元格的上限。请放大地图或降低分辨率。",
    "fillColor": "填充颜色",
    "fillOpacity": "填充不透明度",
    "lineColor": "轮廓颜色",
    "lineWidth": "轮廓宽度",
    "showLabels": "显示单元格 ID",
    "identifyHint": "点击地图以识别 H3 单元格。",
    "selectedCell": "选中的单元格",
    "noSelection": "未选中单元格",
    "copyId": "复制 ID",
    "copied": "已复制",
    "parent": "父单元格",
    "children": "子单元格",
    "neighbors": "相邻单元格",
    "baseCell": "基本单元格",
    "center": "中心",
    "pentagon": "五边形",
    "yes": "是",
    "no": "否",
    "zoomToCell": "缩放至单元格",
    "addAsLayer": "将网格添加为图层",
    "exportGeoJson": "导出 GeoJSON",
    "exportCsv": "导出 CSV",
    "includeNeighbors": "包含所选单元格的相邻单元格",
    "includeParents": "包含所选单元格的父单元格",
    "showIcosahedron": "显示二十面体"
  },
  "timelapse": {
    "title": "延时影像",
    "provider": "影像来源",
    "legend": "图例",
    "yearSlider": "延时年份",
    "play": "播放",
    "pause": "暂停",
    "speed": "速度",
    "secondsPerYear": "每年秒数",
    "secondsPerYearSuffix": "秒/年",
    "loop": "循环",
    "record": "录制视频",
    "stopRecording": "停止录制",
    "recording": "正在录制",
    "recordingFailed": "录制失败。",
    "recordingUnsupported": "此浏览器不支持画布录制。",
    "loadingTiles": "正在加载瓦片…"
  },
  "mapillary": {
    "title": "Mapillary",
    "hint": "点击地图上的覆盖点查看街景图像。",
    "noToken": "需要 Mapillary 访问令牌才能加载覆盖范围和图像。请在下方粘贴一个以开始使用。",
    "tokenPlaceholder": "MLY|…",
    "tokenSave": "保存令牌",
    "tokenHelp": "获取令牌",
    "tokenLabel": "Mapillary 访问令牌",
    "loading": "加载图像…",
    "loadError": "无法加载此图像。",
    "coverageLines": "Mapillary 序列",
    "coveragePoints": "Mapillary 图像"
  },
  "openAerialMap": {
    "hint": "通过地图视图、绘制框或坐标搜索 OpenAerialMap 影像。",
    "search": "搜索此视图",
    "loadMore": "加载更多",
    "searching": "搜索中…",
    "loadingMore": "正在加载更多…",
    "noResults": "此区域未找到影像。",
    "showing": "显示 {{shown}} / {{total}} 张图像。",
    "searchError": "无法访问 OpenAerialMap：{{message}}。请重试。",
    "add": "添加",
    "remove": "移除",
    "zoom": "缩放",
    "download": "下载",
    "metadata": "元数据",
    "addTitle": "将此图像添加到地图",
    "removeTitle": "从地图移除此图像",
    "addUnavailableTitle": "此图像无可用的瓦片服务",
    "zoomTitle": "缩放到此图像",
    "downloadTitle": "下载源 GeoTIFF",
    "metadataTitle": "查看此图像的元数据",
    "modeView": "地图视图",
    "modeDraw": "绘制框",
    "modeBbox": "坐标",
    "drawHint": "在地图上点击并拖拽绘制搜索框。",
    "drawStart": "在地图上绘制框",
    "drawCancel": "取消绘制",
    "drawnBox": "搜索框：{{box}}",
    "coordWest": "西",
    "coordSouth": "南",
    "coordEast": "东",
    "coordNorth": "北",
    "coordSearch": "搜索此框",
    "bboxInvalid": "请输入四个有效坐标，且西 < 东、南 < 北。",
    "footprintsLayer": "OpenAerialMap 足迹",
    "footprintUnavailable": "此图像无可用的瓦片服务。",
    "metadataHeading": "图像元数据",
    "close": "关闭",
    "metaTitle": "标题",
    "metaProvider": "提供商",
    "metaPlatform": "平台",
    "metaResolution": "分辨率",
    "metaAcquired": "获取时间",
    "metaBounds": "边界 (W, S, E, N)",
    "metaSource": "源 GeoTIFF",
    "metaRaw": "原始元数据"
  },
  "arcgisHub": {
    "hint": "搜索 ArcGIS Hub 的公开数据集。可将受支持的图层添加到地图，或下载数据。",
    "searchPlaceholder": "搜索 ArcGIS Hub 数据集",
    "search": "搜索",
    "searchCurrentView": "搜索当前地图范围",
    "enterKeyword": "请输入关键词开始搜索。",
    "loadMore": "加载更多",
    "searching": "搜索中…",
    "loadingMore": "正在加载更多数据集…",
    "noResults": "未找到公开数据集。",
    "searchError": "无法搜索 ArcGIS Hub。",
    "showing": "正在显示 {{total}} 个数据集中的 {{shown}} 个。",
    "noDescription": "未提供描述。",
    "add": "添加到地图",
    "adding": "正在添加 {{title}}…",
    "added": "已添加 {{title}}。",
    "addError": "无法添加此数据集。",
    "zoom": "缩放",
    "download": "下载",
    "preparing": "正在准备 {{title}}…",
    "downloading": "正在下载 {{title}}：{{total}} 个要素中的 {{completed}} 个…",
    "downloadStarted": "已开始下载 {{title}}。",
    "downloadFirstLayer": "{{title}} 包含 {{layerCount}} 个图层；仅下载了第一个。",
    "downloadError": "无法下载此数据集。",
    "details": "详情"
  },
  "openDataCatalogs": {
    "socrataHint": "搜索公开的 Socrata 开放数据目录并添加 GeoJSON 数据集。",
    "ckanHint": "搜索 Humanitarian Data Exchange 的 CKAN 目录并添加可用的 GeoJSON 资源。",
    "searchPlaceholder": "搜索 {{name}}",
    "search": "搜索",
    "enterKeyword": "请输入关键词开始搜索。",
    "loadMore": "加载更多",
    "searching": "搜索中…",
    "noResults": "未找到数据集。",
    "showing": "正在显示 {{total}} 个数据集中的 {{shown}} 个。",
    "noDescription": "未提供描述。",
    "add": "添加到地图",
    "details": "详情",
    "adding": "正在添加 {{title}}…",
    "added": "已添加 {{title}}。",
    "addError": "无法添加数据集。",
    "searchError": "搜索失败。"
  },
  "earthdataGis": {
    "hint": "在 NASA Earthdata GIS 中搜索影像服务、地图服务和要素服务。",
    "searchPlaceholder": "搜索 Earthdata GIS…",
    "search": "搜索",
    "searching": "搜索中…",
    "loadingMore": "正在加载更多…",
    "loadMore": "加载更多",
    "noResults": "没有服务与此搜索匹配。",
    "showing": "正在显示 {{total}} 个服务中的 {{shown}} 个。",
    "searchError": "无法访问 Earthdata GIS：{{message}}。请重试。",
    "limitToView": "限定为地图视图",
    "limitToViewTitle": "仅返回与当前地图视图相交的服务",
    "filterAll": "全部",
    "filterImage": "影像",
    "filterMap": "地图",
    "filterFeature": "要素",
    "kindImage": "影像服务",
    "kindMap": "地图服务",
    "kindFeature": "要素服务",
    "kindWebMap": "Web 地图",
    "filterWebMap": "Web 地图",
    "webMapAdded_other": "已从此 Web 地图添加 {{count}} 个图层。",
    "webMapAddedPartial": "已从此 Web 地图添加 {{total}} 个图层中的 {{added}} 个；其余无法访问。",
    "webMapEmpty": "此 Web 地图没有 GeoLibre 可渲染的图层。",
    "add": "添加",
    "adding": "添加中…",
    "remove": "移除",
    "zoom": "缩放",
    "details": "详情",
    "portal": "门户",
    "portalTitle": "在 Earthdata GIS 门户中打开此项目",
    "cog": "COG",
    "cogTitle": "将此服务下载为 Cloud Optimized GeoTIFF",
    "cogHeading": "下载为 COG",
    "cogAreaView": "当前视图",
    "cogAreaExtent": "完整范围",
    "cogSize": "导出尺寸：{{width}} x {{height}} px",
    "cogResolution": "地面分辨率：{{metres}} m/px",
    "cogNote": "服务会按此尺寸重新导出并重新编码为 COG，因此这是该区域的重采样结果，而非原始分辨率的源栅格。",
    "cogDownload": "下载",
    "cogDownloading": "正在导出并转换…",
    "cogRetrying": "服务拒绝了该尺寸；正在以 {{width}} x {{height}} px 重试…",
    "cogConverting": "正在转换为 COG…",
    "cogDone": "已按 {{width}} x {{height}} px 保存 COG。",
    "cogFailed": "无法下载 COG：{{message}}",
    "cogUnavailable": "下载需要桌面应用或浏览器的保存对话框。",
    "cancel": "取消",
    "addTitle": "将此服务添加到地图",
    "removeTitle": "从地图移除此服务",
    "zoomTitle": "缩放至此服务",
    "zoomUnavailableTitle": "此服务未发布范围信息",
    "detailsTitle": "查看此服务的元数据",
    "addError": "无法添加该服务：{{message}}",
    "addTimeout": "它在一分钟内没有响应。如果处理完成，图层仍会出现。",
    "zoomedToData": "已缩放至超出该图层的完整范围：此服务仅在更高的缩放级别渲染。",
    "detailsHeading": "服务详情",
    "close": "关闭",
    "metaTitle": "标题",
    "metaType": "类型",
    "metaSummary": "摘要",
    "metaDescription": "描述",
    "metaOwner": "发布者",
    "metaModified": "最后修改",
    "metaTags": "标签",
    "metaExtent": "范围（西、南、东、北）",
    "metaCredits": "致谢",
    "metaLicense": "使用限制",
    "metaService": "服务 URL",
    "metaPortalItem": "门户项目",
    "metaRaw": "原始元数据"
  },
  "sourceCoop": {
    "hint": "在 Source Cooperative 搜索开放地理空间数据，或输入账户/产品 ID。",
    "searchPlaceholder": "搜索数据、账户或产品",
    "search": "搜索",
    "searching": "搜索中…",
    "loading": "加载目录…",
    "loadError": "无法访问 Source Cooperative：{{message}}。请重试。",
    "noResults": "无匹配产品。",
    "retry": "重试",
    "featured": "精选",
    "showing": "显示 {{shown}} / {{total}} 个产品。",
    "browseAccount": "浏览 {{account}} 的所有产品",
    "back": "返回",
    "files": "文件",
    "noFiles": "此文件夹中没有文件。",
    "loadingFiles": "加载文件…",
    "loadMore": "加载更多",
    "parent": "上一级",
    "add": "添加",
    "adding": "添加中…",
    "added": "已添加",
    "stream": "流式加载",
    "streaming": "流式加载中",
    "remove": "移除",
    "download": "下载",
    "copyUrl": "复制 URL",
    "copied": "已复制",
    "openProduct": "在 source.coop 上打开",
    "addTitle": "将此文件添加到地图",
    "streamTitle": "在原位查询此文件，只读取视图中的部分。整个文件不会复制到 DuckDB 中 — 适合大文件。",
    "removeTitle": "从地图移除此文件",
    "downloadTitle": "下载此文件",
    "copyUrlTitle": "复制此文件的 URL",
    "openProductTitle": "在 source.coop 上打开此产品",
    "unsupportedTitle": "GeoLibre 无法渲染此格式 — 请改为下载。",
    "addError": "无法添加此文件：{{message}}",
    "largeFileWarning": "文件大小为 {{size}}。系统会从源端流式读取，仅加载视图内的部分。",
    "streamHint": "文件大小为 {{size}}。“添加”会将其完整复制到内存；“流式加载”仅读取视图内的部分。",
    "tooLargeToOpen": "文件大小为 {{size}} — 超出浏览器可打开的上限（{{limit}}）。请下载，或使用该数据集的分区版本。"
  },
  "huggingFace": {
    "browseTab": "浏览",
    "uploadTab": "上传",
    "settingsTab": "设置",
    "hint": "在 Hugging Face 搜索数据集仓库，或输入账户名或 owner/dataset 形式的 id。",
    "searchPlaceholder": "搜索数据集、账户或 owner/dataset",
    "search": "搜索",
    "searching": "搜索中…",
    "loadError": "无法访问 Hugging Face：{{message}}。请重试。",
    "noResults": "无匹配的数据集。",
    "retry": "重试",
    "suggestions": "推荐数据集",
    "showing_other": "{{count}} 个数据集。",
    "browseOwner": "浏览 {{owner}} 的全部数据集",
    "back": "返回",
    "private": "私有",
    "gated": "受限访问",
    "privateHint": "此数据集为私有或受限访问。其文件需要经过身份验证的请求，而地图数据源无法发起此类请求，因此这里既不能添加也不能下载。",
    "stats": "{{likes}} 个赞 · {{downloads}} 次下载",
    "noFiles": "此文件夹中没有文件。",
    "loadingFiles": "加载文件…",
    "loadMore": "加载更多",
    "parent": "上一级",
    "add": "添加",
    "adding": "添加中…",
    "stream": "流式加载",
    "streaming": "流式加载中",
    "remove": "移除",
    "download": "下载",
    "copyUrl": "复制 URL",
    "copied": "已复制",
    "openDataset": "在 Hugging Face 中打开",
    "addTitle": "将此文件添加到地图",
    "streamTitle": "在原位查询此文件，只读取视图中的部分。整个文件不会复制到 DuckDB 中 — 适合大文件。",
    "removeTitle": "从地图移除此文件",
    "downloadTitle": "下载此文件",
    "copyUrlTitle": "复制此文件的 URL",
    "openDatasetTitle": "在 huggingface.co 上打开此数据集页面",
    "unsupportedTitle": "GeoLibre 无法渲染此格式 — 请改为下载。",
    "addError": "无法添加此文件：{{message}}",
    "notRasterIndex": "此 JSON 文件未索引任何栅格，因此没有可放到地图上的内容。支持 MosaicJSON 和 STAC 集合。",
    "largeFileWarning": "文件大小为 {{size}}。系统会从源端流式读取，仅加载视图内的部分。",
    "streamHint": "文件大小为 {{size}}。“添加”会将其完整复制到内存；“流式加载”仅读取视图内的部分。",
    "tooLargeToOpen": "文件大小为 {{size}} — 超出浏览器可打开的上限（{{limit}}）。请下载，或使用该数据集的分区版本。",
    "tokenLabel": "访问令牌",
    "tokenHint": "创建数据集仓库和上传文件需要具有写入权限的 Hugging Face 访问令牌。令牌仅保存在本浏览器中，且只发送给 huggingface.co。",
    "tokenPlaceholder": "hf_…",
    "tokenSave": "保存令牌",
    "tokenClear": "清空",
    "tokenHelp": "获取令牌",
    "tokenChecking": "正在检查令牌…",
    "tokenError": "无法验证此令牌：{{message}}",
    "signedInAs": "已以 {{name}} 登录",
    "readOnlyToken": "此令牌为只读。请创建具有写入权限的令牌以进行上传。",
    "createHeading": "创建数据集仓库",
    "ownerLabel": "所有者",
    "datasetNameLabel": "数据集名称",
    "datasetNamePlaceholder": "my-geodata",
    "privateLabel": "私有",
    "create": "创建",
    "creating": "正在创建…",
    "createdRepo": "已创建 {{repoId}}。",
    "createError": "无法创建此数据集：{{message}}",
    "uploadHeading": "上传文件",
    "targetLabel": "数据集",
    "targetPlaceholder": "owner/dataset",
    "folderLabel": "文件夹（可选）",
    "folderPlaceholder": "data/",
    "chooseFiles": "选择文件",
    "chooseLayer": "选择图层",
    "chooseLayerTitle": "将地图图层的要素作为 GeoJSON 文件上传",
    "layerPickerHeading": "将图层作为 GeoJSON 上传",
    "layerFeatures_other": "{{count}} 个要素",
    "layerOriginalFile": "原始文件",
    "layerUnavailable": "{{name}} 已无法上传。",
    "remoteRasterNote": "从 URL 加载的栅格不会列出：它们的数据不在浏览器中，而且已经有可以分享的链接。只有在本地打开的文件才能上传。",
    "noUploadableLayers": "地图上没有包含可上传要素的图层。请先添加一个矢量图层。",
    "clearSelection": "清空",
    "selectedFiles_other": "已选择 {{count}} 个文件（{{size}}）。",
    "commitMessageLabel": "提交信息（可选）",
    "commitMessagePlaceholder": "通过 GeoLibre 上传",
    "upload": "上传",
    "uploadPreparing": "正在准备上传…",
    "uploadHashing": "正在计算 {{name}} 的哈希（{{index}}/{{total}}）…",
    "uploadSending": "正在上传 {{name}}（{{index}}/{{total}}）…",
    "uploadCommitting": "正在提交…",
    "uploadDone_other": "已上传 {{count}} 个文件。",
    "uploadError": "上传失败：{{message}}",
    "fileTooLarge": "{{name}} 超过了 {{limit}} 的上传上限。",
    "selectionTooLarge": "所选文件共 {{size}}，超过了单次上传 {{limit}} 的上限。请分成更小的批次上传。",
    "openUploaded": "打开数据集",
    "rgbHeading": "多波段影像",
    "rgbHint": "当影像有三个或更多波段时，哪些波段对应红、绿、蓝。序号从 1 开始；之后仍可在样式面板中修改任意图层。",
    "bandR": "红",
    "bandG": "绿",
    "bandB": "蓝",
    "colormapHeading": "单波段影像",
    "colormapHint": "影像只有一个波段时所应用的色彩映射。",
    "colormapLabel": "色彩映射",
    "engineHeading": "渲染引擎",
    "engineHint": "由哪个渲染器解码影像。与上面的设置不同，此项不是按图层生效：它作用于地图上的所有栅格，包括已经添加的栅格。",
    "engineLabel": "引擎",
    "engineAuto": "保持不变",
    "engineGpu": "GPU (deck.gl)",
    "engineWasm": "WebAssembly 切片器",
    "engineTitiler": "TiTiler 服务器",
    "resetDefaults": "恢复默认设置"
  },
  "basemaps": {
    "confirmStyleReplace_other": "切换到“{{name}}”将替换整个地图样式，并移除您添加的 {{count}} 个叠加底图。是否继续？"
  },
  "annotations": {
    "toolbar": "标注工具",
    "layerName": "标注",
    "elementsPanelTitle": "元素",
    "tools": {
      "text": "文本",
      "arrow": "箭头",
      "rectangle": "矩形高亮",
      "ellipse": "椭圆高亮",
      "freehand": "手绘高亮",
      "pin": "图钉标记",
      "sticky_note": "便签",
      "placed_image": "放置的图片"
    },
    "color": "标注颜色",
    "width": "线宽",
    "widthOptions": {
      "thin": "细",
      "medium": "中",
      "thick": "粗"
    },
    "deleteLast": "删除最后一个标注",
    "clearAll": "清除全部标注",
    "textPlaceholder": "输入标签，按 Enter 放置",
    "pinTitlePrompt": "标题",
    "pinDescPrompt": "描述",
    "stickyNotePrompt": "便签内容",
    "imageUrlPrompt": "图片 URL",
    "cancel": "取消",
    "saveElement": "保存元素",
    "atPoint": "位于点",
    "pinnedToExtent": "固定到范围"
  },
  "pythonConsole": {
    "title": "Python 控制台",
    "resize": "调整 Python 控制台大小",
    "clear": "清除输出",
    "collapse": "折叠 Python 控制台",
    "expand": "展开 Python 控制台",
    "close": "关闭 Python 控制台",
    "run": "运行",
    "runHint": "运行 (Ctrl/Cmd+Enter)",
    "completions": "自动补全",
    "placeholder": "在此输入 Python 代码 · Ctrl/Cmd+Enter 运行 · Tab 自动补全 · ↑/↓ 查看历史记录",
    "intro": "Python 控制台已就绪。使用 `geolibre` 对象编写地图脚本，例如 geolibre.get_center()。Tab 自动补全，↑/↓ 调出历史命令，`await geolibre.load_package(\"numpy\")` 可添加包。",
    "loadFailed": "无法加载 Python 运行时。",
    "showEditor": "显示编辑器",
    "hideEditor": "隐藏编辑器",
    "resizeEditor": "调整编辑器大小",
    "fileNew": "新建脚本",
    "fileOpen": "打开脚本…",
    "fileSave": "保存脚本 (Ctrl/Cmd+S)",
    "fileSaveAs": "脚本另存为…",
    "clearEditor": "清除编辑器",
    "runScript": "运行脚本或所选内容 (Ctrl/Cmd+Enter)",
    "untitled": "untitled.py",
    "discardChanges": "是否放弃当前脚本的未保存更改？",
    "editorPlaceholder": "在此编写多行 Python 脚本。Ctrl/Cmd+Enter 在控制台中运行它（或所选内容）；Tab 缩进；Ctrl+Space 自动补全。"
  },
  "notebook": {
    "title": "Notebook",
    "resize": "调整 Notebook 面板大小",
    "collapse": "折叠 Notebook",
    "expand": "展开 Notebook",
    "close": "关闭 Notebook",
    "copyServerUrl": "复制供外部客户端（VS Code…）使用的服务器 URL",
    "serverUrlCopied": "已复制服务器 URL",
    "loading": "正在加载 Notebook…",
    "loadFailed": "无法加载 Notebook。"
  },
  "dashboard": {
    "title": "仪表盘",
    "resize": "调整仪表盘面板大小",
    "collapse": "折叠仪表盘",
    "expand": "展开仪表盘",
    "close": "关闭仪表盘",
    "columns": "列数",
    "addWidget": "添加组件",
    "widgetCount_other": "{{count}} 个组件",
    "empty": "尚无组件。添加图表以汇总图层数据。",
    "emptyNoLayers": "未找到兼容图层。请使用上方的“添加数据”菜单向项目添加矢量图层或 DuckDB 查询图层，然后返回此处开始构建图表。",
    "noLayersHint": "请先添加矢量图层或 DuckDB 查询图层。",
    "layerMissing": "图层不可用",
    "noData": "此图层没有可绘制图表的属性。",
    "selectorMatches_other": "{{total}} 个要素中的 {{count}} 个",
    "selectorClear": "清除",
    "moveBack": "后移",
    "moveForward": "前移",
    "editWidget": "编辑组件",
    "removeWidget": "移除组件",
    "chartType": {
      "histogram": "直方图",
      "scatter": "散点图",
      "bar": "柱状图",
      "line": "折线图",
      "box": "箱线图",
      "pie": "饼图",
      "indicator": "指标",
      "selector": "选择器",
      "list": "列表"
    },
    "aggregate": {
      "count": "计数",
      "sum": "求和",
      "mean": "平均值"
    },
    "chart": {
      "emptyNumeric": "没有可绘制的数值。",
      "emptyScatter": "没有同时具有两个字段数值的行。",
      "emptyBar": "没有可分组的行。",
      "emptyPie": "没有正值可用于绘图。",
      "pieCaptionCount_other": "行数 · {{count}} 个类别",
      "pieCaptionSum_other": "总和 · {{count}} 个类别"
    },
    "editor": {
      "addTitle": "添加组件",
      "editTitle": "编辑组件",
      "description": "选择图层、图表类型和要绘制的字段。",
      "noLayers": "没有可绘图的图层。请先添加矢量图层或 DuckDB 查询图层。",
      "noFields": "此图层没有可用于绘图的数值或分类字段。",
      "layer": "图层",
      "chartType": "图表类型",
      "field": "字段",
      "bins": "分箱数",
      "xAxis": "X 轴",
      "yAxis": "Y 轴",
      "category": "类别",
      "aggregate": "聚合方式",
      "value": "值",
      "prefix": "前缀",
      "suffix": "后缀",
      "multiSelect": "允许多选",
      "listColumns": "列",
      "sortBy": "排序依据",
      "sortDir": "方向",
      "ascending": "升序",
      "descending": "降序",
      "limit": "行数上限",
      "titleLabel": "标题",
      "titlePlaceholder": "可选标题",
      "color": "颜色",
      "colorReset": "重置",
      "colorDefault": "默认图表颜色",
      "cancel": "取消",
      "save": "保存"
    },
    "indicatorAggregation": {
      "count": "计数",
      "sum": "总和",
      "mean": "平均值",
      "min": "最小值",
      "max": "最大值",
      "median": "中位数"
    }
  },
  "assistant": {
    "title": "AI 助手",
    "resize": "调整助手面板大小",
    "clear": "清除对话",
    "close": "关闭助手",
    "send": "发送",
    "sendHint": "发送 (Ctrl/Cmd+Enter)",
    "stop": "停止",
    "placeholder": "询问您的数据，例如“显示人口超过 5000 万的国家” · Ctrl/Cmd+Enter 发送",
    "intro": "与您的数据对话。我可以运行空间 SQL、添加或移除图层、重新设置样式，以及移动地图 — 每项更改都可撤销。试试“按人口用渐变红色色阶给国家上色”。",
    "setupTitle": "设置 AI 助手",
    "setupStatus": "AI 助手需要一个 AI 提供方来进行思考。请在下方为任一提供方添加凭据，保存后面板将立即切换到聊天模式。",
    "setupProviders": "为任一提供方添加凭据",
    "setupOpenSettings": "打开“设置 → AI 提供方”",
    "thinking": "正在处理…",
    "toolError": "失败",
    "provider": "LLM 提供方",
    "profile": "AI 配置文件",
    "deploymentProxy": "部署代理",
    "model": "模型",
    "codeApprovalTitle": "批准代码运行？",
    "codeApprovalBody": "助手想要在应用中运行 {{language}} 代码。请先仔细查看 — 它可以更改地图并访问应用数据。",
    "codeApprovalAlways": "本次会话允许助手运行代码",
    "codeApprovalRun": "运行",
    "codeApprovalDecline": "取消"
  },
  "storymap": {
    "title": "故事地图",
    "description": "构建由滚动驱动的故事地图，由地图章节组成。每个章节捕获一个相机视图和文本。",
    "chapters": "章节（{{count}}）",
    "addChapter": "添加章节",
    "empty": "尚无章节。请在地图上导航，然后添加章节以捕获当前视图。",
    "defaultChapterTitle": "第 {{index}} 章",
    "untitledChapter": "未命名章节",
    "present": "演示",
    "exportHtml": "导出 HTML",
    "exitPresentation": "退出",
    "preview": "飞至此章节",
    "captureView": "设为当前视图",
    "composeOnMap": "在地图上编排",
    "resizeDialog": "调整对话框大小",
    "composeMode": {
      "title": "正在编排章节",
      "hint": "平移、缩放并倾斜地图，然后将该视图保存到此章节。",
      "save": "保存视图并返回故事地图",
      "cancel": "取消",
      "waiting": "等待地图完成移动"
    },
    "moveUp": "上移",
    "moveDown": "下移",
    "onEnter": "进入时",
    "onExit": "退出时",
    "addEffect": "添加图层效果",
    "field": {
      "title": "标题",
      "subtitle": "副标题",
      "byline": "署名",
      "footer": "页脚",
      "theme": "面板主题",
      "showMarkers": "显示标记点",
      "markerColor": "标记点颜色",
      "inset": "内嵌缩略图",
      "hideChapterNav": "隐藏章节列表",
      "startView": "启用起始视图",
      "closingSlide": "启用结束画面",
      "chapterTitle": "章节标题",
      "description": "描述（支持 HTML）",
      "image": "图像 URL",
      "alignment": "面板对齐方式",
      "animation": "地图动画",
      "hidden": "隐藏面板",
      "rotate": "旋转相机",
      "imagePlaceholder": "https://example.com/image.jpg"
    },
    "theme": {
      "dark": "深色",
      "light": "浅色"
    },
    "align": {
      "left": "左对齐",
      "center": "居中",
      "right": "右对齐",
      "full": "全宽"
    },
    "inset": {
      "topLeft": "左上",
      "topRight": "右上",
      "bottomLeft": "左下",
      "bottomRight": "右下"
    },
    "slide": {
      "blank": "空白屏幕",
      "black": "黑屏",
      "global": "全局视图",
      "startAdjacent": "第一章预览",
      "endAdjacent": "停留在最后一章"
    },
    "loadSample": "加载示例故事",
    "htmlFile": "HTML",
    "handout": {
      "button": "讲义 (PDF)",
      "title": "PDF 讲义生成器",
      "description": "将所选章节视图导出为多页 PDF 讲义。",
      "screens": "画面（{{count}}/{{total}}）",
      "selectAll": "全选",
      "selectNone": "全不选",
      "paperSize": "纸张大小",
      "orientation": "方向",
      "portrait": "纵向",
      "landscape": "横向",
      "documentTitle": "文档标题",
      "documentTitlePlaceholder": "显示在每页顶部的标题",
      "subtitle": "副标题",
      "subtitlePlaceholder": "显示在每页标题下方的副标题",
      "byline": "署名",
      "bylinePlaceholder": "作者或署名信息",
      "footerText": "页脚文本",
      "footerPlaceholder": "显示在每页底部的页脚",
      "startSlide": "起始画面",
      "endSlide": "结束画面",
      "generate": "生成 PDF",
      "stop": "停止",
      "cancelled": "导出已取消。",
      "progress": "正在捕获第 {{current}} / {{total}} 个画面…",
      "pdfFile": "PDF 文档",
      "noMap": "地图尚未准备就绪。请稍后重试。",
      "noneSelected": "请至少选择一个要导出的画面。"
    },
    "opacityLabel": "不透明度",
    "toggleNav": "切换章节列表",
    "chapterNav": "故事章节",
    "durationLabel": "过渡时间 (ms)",
    "dragHint": "拖动以移动（双击重置）",
    "resizeHint": "拖动以调整大小",
    "import": "导入",
    "importJson": "导入 JSON…",
    "importCsv": "导入 CSV…",
    "exportData": "导出",
    "exportJson": "导出 JSON",
    "exportCsv": "导出 CSV",
    "reset": "重置",
    "resetTitle": "清除故事并重新开始",
    "resetConfirm": "是否清除此故事地图？所有章节和设置都将被移除，以便您重新开始。"
  },
  "network": {
    "title": "网络分析",
    "description": "根据您的点图层计算等时圈、服务区以及起讫点成本矩阵。",
    "heading": "网络",
    "run": "运行",
    "outputPlaceholder": "输出将显示在此处。",
    "endpointNotice": "点坐标会被发送到路由服务器（{{endpoint}}）。默认使用共享的公共 Valhalla 服务器（FOSSGIS），有速率限制。如需大量使用，请在上方“路由服务器 (Valhalla)”字段中输入您自己服务器的 URL。"
  },
  "statistics": {
    "title": "空间统计",
    "description": "空间自相关、热点分析和密度度量。所有工具均在您的 GeoJSON 图层上于客户端运行。",
    "heading": "空间统计",
    "run": "运行",
    "requiredFieldLegend": "表示必填字段",
    "outputPlaceholder": "输出将显示在此处。"
  },
  "processing": {
    "filePicker": {
      "filePath": "文件路径",
      "chooseFile": "选择文件",
      "chooseFilePlaceholder": "选择一个文件",
      "chooseInputFile": "选择输入文件",
      "chooseOutputFile": "选择输出文件"
    },
    "searchTools": "搜索工具",
    "refreshCatalog": "刷新目录",
    "increaseValue": "增加数值",
    "decreaseValue": "减少数值",
    "distance": {
      "unitLabel": "距离单位",
      "units": {
        "degrees": "度",
        "meters": "米",
        "kilometers": "千米",
        "feet": "英尺",
        "miles": "英里"
      },
      "north": "北纬 {{latitude}}°",
      "south": "南纬 {{latitude}}°",
      "equator": "赤道",
      "geographicNote": "所选图层使用地理坐标系（WGS84），因此距离以度为单位。可在距离字段旁选择单位以改用米输入，或重投影到投影坐标系以获得精确结果。",
      "converted": "以 {{degrees}}° 传递给工具，按 {{latitude}} 换算。一度的长度随纬度和方向变化，因此这是近似值。",
      "convertedEmpty": "数值将按 {{latitude}} 换算为度。一度的长度随纬度和方向变化，因此这是近似值。",
      "notANumber": "不是数字，因此按原样传递给工具而不进行换算。请使用 12000 或 1.5 这样的普通小数。"
    },
    "history": {
      "title": "处理历史",
      "description": "此项目中的所有处理运行记录，最新的在前。可重新运行工具、以相同参数重新打开工具，或将运行记录复制为 JSON 或 Python。",
      "empty": "尚未记录任何处理运行。从“处理”菜单运行工具后将显示在此处。",
      "rerun": "重新运行",
      "editRerun": "编辑并重新运行",
      "copyJson": "复制 JSON",
      "copyPython": "复制 Python",
      "copied": "已复制",
      "clear": "清除历史",
      "count_other": "已记录 {{count}} 次运行",
      "toolUnavailable": "工具“{{toolId}}”已不可用"
    },
    "modelBuilder": {
      "moveStepUp": "上移步骤",
      "moveStepDown": "下移步骤",
      "removeStep": "移除步骤",
      "title": "批处理与模型",
      "description": "对多个图层运行同一个矢量工具，或将多个工具串联成可复用的模型并随项目保存。",
      "tabBatch": "批处理",
      "tabModels": "模型",
      "outputPlaceholder": "输出将显示在此处。",
      "tool": "工具",
      "sharedParameters": "共享参数",
      "noExtraParameters": "此工具没有额外参数。",
      "inputLayers": "输入图层",
      "selectAll": "全选",
      "clearSelection": "清除",
      "noCompatibleLayers": "没有兼容的 GeoJSON 图层。",
      "newModel": "新建模型",
      "noSavedModels": "尚无已保存的模型。",
      "untitledModel": "未命名模型",
      "modelName": "模型名称",
      "emptyPipelineHint": "添加一个步骤以开始构建流程。第一步读取输入图层；后续每一步接收上一步的输出。",
      "addStep": "添加步骤",
      "runModel": "运行模型",
      "deleteModel": "删除",
      "inputPreviousStep": "输入：← 上一步的输出",
      "unknownTool": "未知工具“{{id}}”",
      "noParameters": "没有参数。"
    },
    "parameterField": {
      "selectLayer": "选择一个图层...",
      "selectField": "选择一个字段...",
      "selectLayerFirst": "请先选择一个图层"
    },
    "whitebox": {
      "run": "运行",
      "running": "正在运行…",
      "runLocal": "本地运行 (WASM)",
      "runLocalHint": "在 WebAssembly 中本地运行（无需 Python Sidecar）",
      "runningLocally": "正在使用 WebAssembly 本地运行。无需 Sidecar。",
      "copyLink": "复制链接",
      "copyLinkCopied": "已复制！",
      "copyLinkHint": "复制可分享的链接，用当前设置打开此工具",
      "copyLinkFailed": "无法将链接复制到剪贴板。",
      "catalogSnapshotError": "无法加载 Whitebox 工具目录快照。",
      "localRunnerError": "无法加载本地（WASM）工具运行器。请刷新后重试，或在 Sidecar 可用时改用它。",
      "output": {
        "geojson": "GeoJSON（添加到地图）",
        "geoparquet": "GeoParquet（下载，保留坐标系）",
        "flatgeobuf": "FlatGeobuf（下载，保留坐标系）",
        "shapefile": "Shapefile（下载，保留坐标系）",
        "projectedHint": "以目标坐标系保存到您的下载文件夹。地图仅显示 EPSG:4326，因此投影结果不会作为图层添加。"
      },
      "filterBySource": "按来源筛选",
      "allSources": "所有来源",
      "geolibreTools": "GeoLibre 工具",
      "whiteboxTools": "Whitebox 工具",
      "toolbox": "Whitebox 工具箱",
      "checkingRuntime": "正在检查运行时。",
      "toolsAvailable_other": "{{count}} 个工具可用。",
      "runtimeUnavailable": "Whitebox 运行时不可用。",
      "useMapExtent": "使用地图范围",
      "fromLayer": "从图层",
      "drawBbox": "在地图上绘制",
      "drawingBbox": "绘制中…",
      "drawBboxHint": "在地图上拖拽绘制边界框，按 Esc 取消。",
      "mapExtentPlaceholder": "minX,minY,maxX,maxY",
      "mapExtentUnavailable": "地图视图尚未可用。请等待地图加载完成后再试。",
      "mapExtentInvalid": "当前地图视图无法用作边界框：它跨越了 180° 经线或超出有效经纬度范围。请调整视图后再试。",
      "extentLabel": "感兴趣区域",
      "extentNorth": "北",
      "extentSouth": "南",
      "extentWest": "西",
      "extentEast": "东",
      "extentHint": "可从当前地图视图获取矩形范围，或在地图上拖出一个范围，而不必逐个输入边界值。坐标以 WGS84 (EPSG:4326) 填入。",
      "noToolSelected": "未选择工具",
      "optionDefault": "默认",
      "optionPath": "路径",
      "selectedLayer": "所选图层",
      "filePath": "文件路径",
      "auto": "自动",
      "chooseOutputPath": "选择输出路径",
      "chooseInputPath": "选择输入路径",
      "categoryGeneral": "常规",
      "categoryAll": "全部（{{total}}）",
      "errorLoadSnapshot": "无法加载 Whitebox 工具目录快照。",
      "errorLoadLive": "无法加载实时工具目录。",
      "errorConnect": "无法连接到 sidecar。",
      "errorPoll": "无法查询作业状态。",
      "errorStartTool": "无法启动 Whitebox 工具。",
      "errorStartSidecar": "无法启动 GeoLibre sidecar。",
      "errorStopSidecar": "无法停止 GeoLibre sidecar。",
      "noToolsFound": "未找到工具。",
      "noParameters": "此工具没有参数。",
      "noOutput": "暂无输出。",
      "enabled": "启用",
      "requiredSuffix": " | 必填",
      "selectField": "选择字段",
      "fieldName": "字段名称",
      "crs": {
        "browse": "浏览",
        "codePlaceholder": "EPSG 代码",
        "searchLabel": "搜索坐标参考系",
        "searchPlaceholder": "按名称或 EPSG 代码搜索",
        "geographic": "地理坐标系",
        "projected": "投影坐标系",
        "noResults": "没有匹配的坐标系。仍可直接输入任意 EPSG 代码。"
      },
      "vectorUnitsNote": "矢量图层以 WGS84 读取，因此距离、间距和容差值的单位是度，而不是米。1° 约为 111 公里，0.001° 约为 111 米。"
    },
    "sidecar": {
      "unavailableTitle": "处理服务器不可用。",
      "showHelp": "显示这意味着什么以及如何解决",
      "hideHelp": "隐藏详情",
      "intro": "处理服务器是一个可选的本地辅助程序（{{sidecarUrl}}），用于在后台运行较重的 Python 后端工具，与应用本身分离。大多数 Whitebox 工具不需要它：它们可以完全通过 WebAssembly 在您的浏览器中运行。",
      "wasmTipTitle": "无需服务器运行",
      "wasmTip": "启用“本地运行 (WASM)”以在浏览器中运行 Whitebox 工具。无需服务器、安装或配置。",
      "runLocallyButton": "本地运行 (WASM)",
      "troubleshootingTitle": "仍想使用服务器？",
      "stepStartServerDesktop": "在工具列表面板中点击“启动服务器”以启动它，然后等待几秒钟使其上线。",
      "stepStartServerBrowser": "服务器只能从 GeoLibre 桌面应用启动。在浏览器中，请继续启用“本地运行 (WASM)”。",
      "stepCheckPort": "请确保防火墙、杀毒软件或网络策略未阻止本地端口 {{port}}。",
      "stepRestart": "如果服务器意外停止，请重启 GeoLibre 桌面应用并重新打开此对话框。"
    },
    "vectorTools": {
      "title": "矢量工具",
      "description": "对您的 GeoJSON 图层执行常用的矢量几何操作。",
      "engine": "引擎",
      "engineClient": "客户端（Turf.js）",
      "engineSidecar": "Sidecar（GeoPandas）",
      "enginePyodide": "Python（Pyodide）",
      "checkingSidecar": "正在检查 sidecar 可用性...",
      "sidecarUnavailableClient": "GeoPandas sidecar 不可用。请使用 vector 附加组件启动 sidecar，或切换到客户端引擎。",
      "sidecarUnavailablePyodide": "GeoPandas sidecar 不可用。请使用 vector 附加组件启动 sidecar，或切换到 Python（Pyodide）。",
      "pyodideNote": "在您的浏览器中运行 GeoPandas。首次运行会下载 Python 运行时（仅一次，需要联网）。",
      "run": "运行",
      "outputPlaceholder": "输出将显示在此处。",
      "resolutionRange": "分辨率（0-{{max}}）"
    }
  },
  "segmentation": {
    "title": "AI 分割",
    "description": "使用 SAM3（segment-geospatial）将影像转换为矢量要素。选择一个 GeoTIFF，描述要分割的内容，即可获得多边形作为新图层。",
    "startServer": "启动服务器",
    "downloadDesktop": "下载桌面应用",
    "imageLabel": "图像 (GeoTIFF)",
    "imagePlaceholder": "选择一个 GeoTIFF…",
    "chooseImage": "选择图像",
    "modeLabel": "模式",
    "modeText": "文本提示",
    "modeAutomatic": "自动（全部分割）",
    "promptLabel": "提示词",
    "promptPlaceholder": "例如 树木、建筑物、水体",
    "confidenceLabel": "置信度阈值",
    "segment": "分割",
    "status": {
      "checking": "正在检查 AI 分割服务…",
      "unavailableDesktop": "AI 分割服务尚未运行。请启动已启用 segment-geospatial 的 GeoLibre 服务器以使用此功能。",
      "unavailableWeb": "AI 分割在浏览器中不可用。请使用 GeoLibre 桌面应用运行此功能。"
    },
    "error": {
      "chooseImage": "请选择要分割的图像 (GeoTIFF)。",
      "enterPrompt": "请输入文本提示，例如“树木”或“建筑物”。",
      "startServer": "无法启动 GeoLibre Sidecar。",
      "failed": "分割失败。"
    },
    "noObjects": "未找到任何对象。",
    "added": "已添加 {{count}} 个要素，命名为“{{name}}”。",
    "layerName": "分割：{{prompt}}",
    "layerNameDefault": "分割",
    "sidecar": {
      "title": "无法启动 AI 分割服务器。",
      "intro": "AI 分割在本地辅助服务器（{{sidecarUrl}}）中运行，该服务器承载来自 segment-geospatial 的 SAM3 模型。它在后台运行 Python，与应用本身分离，且不属于浏览器构建版本。",
      "troubleshootingTitle": "如何启动服务器",
      "stepInstall": "请确保 GeoLibre 服务器已安装并启用 segment-geospatial 后端，以便分割模型可用。",
      "stepStartServerDesktop": "点击上方的“启动服务器”以启动它，然后等待几秒钟使模型上线。"
    }
  },
  "objectDetection": {
    "title": "目标检测",
    "description": "在浏览器中运行导出为 ONNX 格式的 YOLO 模型处理 GeoTIFF。检测到的框会被地理配准，每个类别添加为单独图层。",
    "hint": "使用内置 COCO 模型（下载并缓存一次）或使用自己的 YOLOv5/v8/v11 ONNX。检测在浏览器本地运行。内置模型检测日常物体；对于航拍图像，请提供自己训练的俯视模型。",
    "imageLabel": "图像 (GeoTIFF)",
    "imagePlaceholder": "选择 GeoTIFF…",
    "chooseImage": "选择图像",
    "modelLabel": "模型",
    "modelSourceBuiltin": "内置（下载）",
    "modelSourceLocal": "本地文件",
    "builtinModelLabel": "内置模型",
    "modelFileLabel": "模型文件 (ONNX)",
    "modelPlaceholder": "选择 .onnx 模型…",
    "chooseModel": "选择模型",
    "downloadingModel": "正在下载模型…",
    "classNamesLabel": "类别名称（逗号分隔，可选）",
    "classNamesPlaceholder": "例如：汽车、树木、建筑",
    "confidenceLabel": "置信度",
    "iouLabel": "IoU (NMS)",
    "inputSizeLabel": "输入尺寸",
    "detect": "检测",
    "noObjects": "未检测到物体。请尝试降低置信度阈值。",
    "added": "已添加 {{count}} 个检测结果，共 {{classes}} 个类别。",
    "layerName": "检测：{{class}}",
    "error": {
      "chooseImage": "请选择一个图像 (GeoTIFF) 进行检测。",
      "photoLocation": "此照片没有可用的 GPS 坐标。请选择带地理标记的照片。",
      "chooseModel": "请选择导出为 ONNX 的 YOLO 模型 (.onnx)。",
      "downloadModel": "无法下载模型。请检查网络连接后重试。",
      "failed": "检测失败。"
    }
  },
  "segmentEverything": {
    "title": "万物分割",
    "description": "在浏览器中自动运行 SlimSAM 处理 GeoTIFF。每个检测到的对象都会成为地理配准的多边形并添加为一个图层。",
    "hint": "在图像上采样网格点并使用 SlimSAM 分割（下载并缓存一次）。无需点击或标注 — 更密集的网格能找到更多对象，但耗时更长。",
    "imageLabel": "图像 (GeoTIFF)",
    "imagePlaceholder": "选择 GeoTIFF…",
    "chooseImage": "选择图像",
    "gridLabel": "网格",
    "qualityLabel": "质量",
    "minSizeLabel": "最小尺寸 %",
    "run": "分割",
    "downloadingModel": "正在下载模型…",
    "progress": "分割中… {{done}}/{{total}}",
    "noObjects": "未分割到对象。请尝试更密集的网格或更低的质量阈值。",
    "added": "已添加 {{count}} 个分割结果。",
    "layerName": "分割结果",
    "error": {
      "chooseImage": "请选择一个图像 (GeoTIFF) 进行分割。",
      "downloadModel": "无法下载模型。请检查网络连接后重试。",
      "failed": "分割失败。"
    }
  },
  "pluginPanel": {
    "expand": "展开面板",
    "collapse": "折叠面板",
    "close": "关闭面板",
    "resize": "调整面板大小",
    "moveLeft": "将面板移到左侧",
    "moveRight": "将面板移到右侧",
    "mergeIntoStyleRail": "合并到样式栏",
    "mergeIntoLayersRail": "合并到图层栏",
    "detach": "分离为可移动面板",
    "collapsedLabel": "{{title}}（已折叠）"
  },
  "sharedRail": {
    "label": "侧边栏",
    "layers": "图层",
    "style": "样式",
    "expand": "展开{{title}}",
    "collapse": "折叠{{title}}"
  },
  "attributeTable": {
    "title": "属性表",
    "resize": "调整属性表大小",
    "editValues": "编辑属性值",
    "editTitleFinishGeometry": "请先完成几何编辑再编辑属性",
    "editTitleReadOnly": "通过“添加矢量图层”添加的图层不支持编辑",
    "editTitleUseSaveCancel": "使用“保存”或“取消”完成编辑",
    "exitEditMode": "退出编辑模式",
    "editTitleDuckdb": "在内存中编辑显示的 DuckDB 查询属性",
    "saveEdits": "保存属性编辑",
    "saveTitleInvalid": "保存前请修正无效的 JSON",
    "saveTitleDuckdb": "保存内存中的 DuckDB 属性编辑",
    "addFieldTitle": "添加新字段",
    "addField": "添加字段",
    "fieldCalculatorTitle": "根据表达式计算字段值",
    "fieldCalculator": "字段计算器",
    "manageFieldsTitle": "显示或隐藏字段",
    "manageFields": "管理字段",
    "columnExplorerTitle": "一览所有字段",
    "columnExplorerTitleDisabled": "字段浏览器需要矢量图层或 DuckDB 查询图层",
    "columnExplorer": "字段浏览器",
    "statisticsTitle": "字段统计摘要",
    "statisticsTitleDisabled": "统计功能需要矢量图层或 DuckDB 查询图层",
    "statistics": "字段统计",
    "chartsTitle": "对数值字段绘图",
    "chartsTitleDisabled": "图表功能需要矢量图层或 DuckDB 查询图层",
    "charts": "图表",
    "dashboardTitle": "打开仪表盘以构建图表组件",
    "dashboard": "仪表盘",
    "exportSelectedLayer": "导出所选图层",
    "exportTitleDisabled": "导出需要基于 GeoJSON 的图层",
    "cancelEdits": "取消属性编辑",
    "searchPlaceholder": "搜索属性...",
    "searchAria": "搜索属性",
    "clearSelectedFeature": "清除所选要素",
    "statusFeatures_other": "{{count}} 个要素",
    "statusShown_other": "显示 {{count}} 个",
    "statusSelected_other": "已选 {{count}} 个",
    "featureViewAria": "要素视图",
    "showAllFeatures": "显示所有要素",
    "showSelectedFeatures": "显示已选（{{count}}）",
    "expand": "展开属性表",
    "collapse": "折叠属性表",
    "close": "关闭属性表",
    "newFieldPlaceholder": "例如 category",
    "defaultValuePlaceholder": "留空表示空值",
    "newFieldNamePlaceholder": "新字段名称",
    "showFields": "显示字段",
    "noFields": "无字段",
    "showAllFields": "显示所有字段",
    "buttons": {
      "edit": "编辑",
      "calculate": "计算",
      "fields": "字段",
      "explore": "浏览",
      "statistics": "统计",
      "export": "导出"
    },
    "chart": {
      "field": "字段",
      "xAxis": "X 轴",
      "yAxis": "Y 轴",
      "category": "类别",
      "value": "值",
      "title": "图表",
      "description": "可视化“{{layer}}”中的字段。",
      "noChartableFields": "此图层没有可用于绘图的数值或类别字段。",
      "chartType": "图表类型",
      "typeHistogram": "直方图",
      "typeScatter": "散点图",
      "typeBar": "柱状图",
      "typeLine": "折线图",
      "typeBox": "箱线图",
      "typePie": "饼图",
      "bins": "分箱数",
      "aggregate": "聚合",
      "aggCount": "计数",
      "aggSum": "求和",
      "aggAverage": "平均值",
      "download": "下载",
      "downloadPng": "PNG 图片",
      "downloadSvg": "SVG 矢量图",
      "exportError": "无法导出该图表。"
    },
    "selectedLayerName": "- {{name}}",
    "noLayerSelected": "- 选择一个含属性的图层",
    "zoomToSelection": "缩放至所选内容",
    "loadingAttributes": "正在加载图层属性…",
    "requiresVectorLayer": "属性表需要矢量图层或 DuckDB 查询图层。",
    "invalidJson": "无效的 JSON",
    "editCellAria": "编辑要素 {{featureId}} 的 {{col}}",
    "resizeColumn": "调整 {{name}} 列宽",
    "renameFieldAria": "重命名字段 {{name}}",
    "manageFieldTitle": "管理字段“{{name}}”",
    "manageFieldAria": "管理字段 {{name}}",
    "renameField": "重命名字段",
    "hideField": "隐藏字段",
    "excludeField": "导出时排除该字段",
    "includeField": "导出时包含该字段",
    "moveLeft": "左移",
    "moveRight": "右移",
    "deleteField": "删除字段",
    "joinedColumnTitle": "连接列，由连接表格派生。请改为编辑连接表格或连接定义。",
    "virtualColumnTitle": "虚拟字段，由表达式计算得出。请改为在图层的样式面板中编辑其定义。",
    "deleteFieldConfirm": "此操作会从“{{layer}}”中的每个要素永久删除字段“{{field}}”。引用该字段的样式或标签将被清除。此操作无法撤销。",
    "addFieldDescription": "为“{{layer}}”中的每个要素添加一个新字段。",
    "fieldName": "字段名称",
    "fieldExists": "名为“{{name}}”的字段已存在。",
    "fieldType": "类型",
    "typeText": "文本",
    "typeNumber": "数字",
    "typeBoolean": "布尔值",
    "defaultValue": "默认值",
    "noDefault": "（无默认值）",
    "noFeaturesForField": "此图层没有可添加字段的要素。",
    "calcDescription": "根据 JavaScript 表达式计算值，并将其写入“{{layer}}”中的某个字段。",
    "targetField": "目标字段",
    "updateField": "更新字段",
    "createField": "创建字段",
    "outputType": "输出类型",
    "outputAuto": "自动（保留计算得出的类型）",
    "expression": "表达式",
    "calcExpressionPlaceholder": "例如 pop / area，或 upper(name)，或 pop > 100 ? \"big\" : \"small\"",
    "fieldsLabel": "字段：",
    "insertField": "插入 {{name}}",
    "functionsLabel": "函数：",
    "insertFunction": "插入 {{name}}()",
    "geomMeasureLabel": "几何：",
    "geomMetric": {
      "length": "长度",
      "perimeter": "周长",
      "area": "面积"
    },
    "geomInsert": "插入",
    "sampleRowErrored": "示例行出错（其他行仍可能计算成功）：{{message}}",
    "preview": "预览：",
    "onlySelectedFeature": "仅更新所选要素",
    "evaluationFailed": "求值失败。",
    "invalidExpression": "无效的表达式。",
    "calcCouldNotApply": "无法将该计算应用于此图层。",
    "calcAppliedWithErrors": "已应用，但 {{evaluated}} 个要素中有 {{errors}} 个出错，已写入为 null。",
    "exportFailed": "无法导出所选图层。",
    "saveTitleFormErrors": "保存前请修复属性表单违规"
  },
  "styleManager": {
    "title": "样式管理器",
    "description": "保存、浏览和应用可复用的样式、符号、标注预设和色带，可跨图层与项目使用。",
    "searchPlaceholder": "搜索样式和标签…",
    "presetsSection": "内置预设",
    "librarySection": "我的库",
    "projectSection": "此项目",
    "empty": "没有匹配的已保存样式。保存图层样式或导入样式库以开始使用。",
    "apply": "应用",
    "delete": "删除",
    "saveCurrent": "保存当前样式…",
    "nameLabel": "名称",
    "kindLabel": "保存内容",
    "kindStyle": "完整样式",
    "kindSymbol": "仅符号",
    "kindLabels": "仅标注",
    "kindRamp": "仅色带",
    "tagsLabel": "标签",
    "tagsPlaceholder": "边界, 底图（以逗号分隔）",
    "scopeLabel": "存储位置",
    "scopeApp": "我的库（所有项目）",
    "scopeProject": "仅此项目",
    "saveButton": "保存样式",
    "cancel": "取消",
    "import": "导入…",
    "export": "导出…",
    "importFilterName": "样式库 / QML / SLD",
    "exportFilterName": "GeoLibre 样式库",
    "applied": "已将“{{name}}”应用到 {{layer}}。",
    "appliedRampHint": "已应用“{{name}}”。请将图层切换为分级或分类样式以查看色带。",
    "saved": "已将“{{name}}”保存到库中。",
    "deleted": "已删除“{{name}}”。",
    "importedCount_other": "已导入 {{count}} 个样式。",
    "importedEntryName": "导入的样式",
    "importInvalid": "该文件不是样式库、QML 或 SLD。",
    "importNoMatch": "无法从该样式中读取符号化信息。",
    "exportEmpty": "没有可导出的已保存样式。",
    "exportFailed": "无法导出样式库。",
    "exportSuccess": "样式库已导出。",
    "noLayer": "请选择矢量图层以保存或应用样式。"
  },
  "style": {
    "panelLabel": "图层样式",
    "panelLabelCollapsed": "图层样式（已折叠）",
    "heading": "样式",
    "headingWithLayer": "样式 - {{name}}",
    "resizePanel": "调整样式面板大小",
    "expand": "展开样式",
    "collapse": "折叠样式",
    "openStyleManager": "已保存的样式…",
    "addClass": "添加分类",
    "removeClass": "移除分类",
    "beforeIdSavedUnavailable": "已保存（不可用）",
    "raster": {
      "greyscale": "灰度",
      "greyscaleHint": "切换灰度底图（将饱和度降至最低）",
      "reset": "重置",
      "resetHint": "将调整重置为默认值",
      "exactValueHint": "双击以输入精确值",
      "opacity": "不透明度",
      "brightnessMin": "亮度最小值",
      "brightnessMax": "亮度最大值",
      "saturation": "饱和度",
      "contrast": "对比度",
      "hueRotate": "色相旋转",
      "footerDeck": "更改会实时应用于栅格图层的不透明度。",
      "footerMaplibre": "更改会实时应用于 MapLibre 栅格绘制属性。",
      "valueAria": "{{label}} 值",
      "editValueAria": "编辑 {{label}} 值"
    },
    "visibility": {
      "minZoom": "最小缩放级别",
      "maxZoom": "最大缩放级别",
      "minZoomTooltip": "此图层出现的缩放级别。数值越大表示放大得越多。",
      "maxZoomTooltip": "此图层消失的缩放级别。数值越大表示放大得越多。"
    },
    "joins": {
      "heading": "连接",
      "empty": "通过匹配键字段，从其他图层或表格附加列。连接的列会随表格数据变化而更新，并随工程一起保存。",
      "addJoin": "添加连接",
      "joinLayer": "连接图层",
      "selectLayer": "选择图层…",
      "joinField": "连接字段",
      "targetField": "目标字段",
      "selectField": "选择字段…",
      "fields": "要连接的字段",
      "fieldCount_other": "{{count}} 个字段",
      "prefix": "字段名前缀",
      "prefixPlaceholder": "例如 census_",
      "add": "添加",
      "cancel": "取消",
      "remove": "移除连接",
      "enabledTitle": "应用此连接",
      "missingLayer": "未找到连接图层",
      "noCandidates": "没有其他图层具有可连接的属性表",
      "statsMatched": "{{total}} 个要素中有 {{matched}} 个匹配",
      "statsUnmatchedJoin_other": "{{count}} 个表格行未匹配"
    },
    "virtualFields": {
      "heading": "虚拟字段",
      "empty": "添加由表达式计算的列，数据变化时会自动重新计算。虚拟字段随工程一起保存，并显示在字段出现的所有位置：属性表、样式、标签和选择。",
      "addField": "添加虚拟字段",
      "name": "字段名称",
      "namePlaceholder": "例如 density",
      "nameTaken": "已存在同名的列",
      "nameConflict": "未应用：名称与现有列冲突",
      "expression": "表达式",
      "expressionPlaceholder": "[\"/\", [\"get\", \"pop\"], [\"get\", \"area_km2\"]]",
      "expressionTarget": "虚拟字段表达式",
      "openBuilder": "打开构建器",
      "invalidExpression": "无效的表达式",
      "add": "添加",
      "save": "保存",
      "cancel": "取消",
      "edit": "编辑虚拟字段",
      "remove": "移除虚拟字段",
      "enabledTitle": "应用此虚拟字段",
      "evaluationErrors_other": "{{count}} 个要素求值失败（空单元格）"
    },
    "labels": {
      "heading": "标签",
      "show": "显示标签",
      "field": "标签字段",
      "noAttributes": "未找到属性",
      "selectField": "选择一个字段…",
      "placement": "位置",
      "placementPoint": "质心 / 点",
      "placementLine": "沿线 / 多边形边缘",
      "textSize": "文字大小",
      "haloWidth": "光晕宽度",
      "textColor": "文字颜色",
      "haloColor": "光晕颜色",
      "minZoom": "最小缩放级别",
      "maxZoom": "最大缩放级别",
      "allowOverlap": "允许标签重叠",
      "anchor": "锚点",
      "anchorCenter": "居中",
      "anchorLeft": "左侧",
      "anchorRight": "右侧",
      "anchorTop": "顶部",
      "anchorBottom": "底部",
      "anchorTopLeft": "左上",
      "anchorTopRight": "右上",
      "anchorBottomLeft": "左下",
      "anchorBottomRight": "右下",
      "offsetX": "偏移 X (em)",
      "offsetY": "偏移 Y (em)",
      "rotation": "旋转 (°)",
      "maxWidth": "换行宽度 (em)",
      "transform": "字母大小写",
      "transformNone": "保持原样",
      "transformUppercase": "大写",
      "transformLowercase": "小写",
      "dedupe": "重复标签",
      "dedupeOff": "为每个要素显示标签",
      "dedupeUnique": "每个位置一个标签",
      "dedupeConcatenate": "合并同一位置的值",
      "dedupeHint": "折叠堆叠在同一坐标处的点。对本地点图层使用标签字段。",
      "expression": "表达式（可选）",
      "expressionHint": "MapLibre 表达式（JSON）。设置后将覆盖字段设置。",
      "expressionInvalid": "不是有效的 MapLibre 表达式（必须是 JSON 数组）。此值将被忽略。",
      "dataDefined": {
        "heading": "数据定义覆盖",
        "size": "大小",
        "color": "颜色",
        "opacity": "不透明度",
        "visibility": "可见性",
        "priority": "优先级",
        "sizeTarget": "标注大小表达式",
        "colorTarget": "标注颜色表达式",
        "opacityTarget": "标注不透明度表达式",
        "visibilityTarget": "标注可见性表达式",
        "priorityTarget": "标注优先级表达式",
        "notSet": "未设置",
        "clear": "清除表达式",
        "hint": "按要素求值的 MapLibre 表达式。大小、不透明度和优先级返回数字(优先级值较小的标注先放置),颜色返回颜色,可见性返回真/假。重复标注合并启用时将被忽略。 不透明度表达式将替代图层不透明度作用于标注。"
      }
    },
    "elevation3d": {
      "mode": "3D（Z 值）",
      "fillColor": "填充颜色",
      "outlineColor": "轮廓颜色",
      "strokeWidth": "描边宽度",
      "strokeWidthMeters": "描边宽度（米）",
      "fillOpacity": "填充不透明度",
      "circleRadius": "圆形半径",
      "verticalScale": "垂直夸张系数",
      "verticalScaleTooltip": "将每个坐标的 Z 值相乘。1 表示渲染真实高程，数值越大则地形起伏越明显。",
      "offset": "海拔偏移（米）",
      "offsetTooltip": "为每个要素添加的固定高度（米），例如可将轨迹抬升至 3D 建筑或地形之上。",
      "footer": "通过 deck.gl 依据坐标 Z 值以 3D 方式渲染。更改会实时生效。此模式下不支持要素识别和高亮显示。"
    },
    "diagrams": {
      "heading": "图表符号",
      "chartType": "图表类型",
      "typeNone": "无",
      "typePie": "饼图",
      "typeDonut": "环形图",
      "typeBar": "柱状图",
      "typeStackedBar": "堆叠柱状图",
      "fields": "属性",
      "addField": "添加属性",
      "removeField": "移除属性",
      "noFields": "添加要在每个要素上绘制的数值属性。",
      "fieldAttribute": "图表属性 {{index}}",
      "sizeMode": "大小",
      "sizeFixed": "固定大小",
      "sizeSum": "按属性总和缩放",
      "sizeAttribute": "按属性缩放",
      "sizeField": "大小属性",
      "size": "大小 (px)",
      "minZoom": "最小缩放级别",
      "declutter": "隐藏重叠的图表",
      "truncated": "仅为 {{count}} 个要素绘制图表，其余要素不显示。",
      "atlasFull": "有 {{count}} 个图表在此大小下无法容纳，已被隐藏。请减小图表大小。"
    },
    "symbology": {
      "colormap": "色彩映射",
      "modeSingle": "单一符号",
      "modeGraduated": "渐变分级",
      "modeCategorized": "分类符号",
      "modeRuleBased": "基于规则",
      "modeExpression": "高级表达式",
      "rules": "规则",
      "addRule": "添加规则",
      "removeRule": "移除规则",
      "noRulesPrefix": "尚无规则。请添加一条规则并为其提供 MapLibre 过滤表达式（例如 ",
      "noRulesSuffix": "）。首个匹配的规则生效；“其他”规则用于对其余所有要素着色。",
      "ruleColor": "规则 {{index}} 颜色",
      "ruleColorPick": "从屏幕上拾取规则 {{index}} 的颜色",
      "ruleLabel": "规则 {{index}} 标签",
      "ruleFilter": "规则 {{index}} 过滤条件",
      "ruleEnabled": "启用规则 {{index}}",
      "ruleAddChild": "添加子规则",
      "ruleOptions": "符号与可见性",
      "ruleMinZoom": "最小缩放级别",
      "ruleMaxZoom": "最大缩放级别",
      "ruleZoomInvalid": "最小缩放必须小于最大缩放 - 范围为空时此规则永远不会生效。",
      "ruleStrokeWidth": "描边宽度",
      "ruleFillOpacity": "填充不透明度",
      "ruleCircleSize": "圆半径",
      "ruleOutlineColor": "覆盖轮廓颜色",
      "ruleOutlineColorPick": "从屏幕上拾取规则 {{index}} 的轮廓颜色",
      "ruleInherit": "继承",
      "ruleGroupNote": "此规则包含子规则：它仅用于收窄子规则的匹配范围，自身不参与绘制。",
      "labelPlaceholder": "标签（可选）",
      "filterInvalid": "无效的过滤条件 — 必须是 JSON 数组表达式。此规则将被跳过，直至修正。",
      "elseRuleColor": "“其他”规则颜色",
      "elseRuleColorPick": "从屏幕上拾取“其他”规则的颜色",
      "elseRuleEnabled": "启用“其他”规则（关闭时，不匹配任何规则的要素将被隐藏）",
      "elseAllOtherFeatures": "其他（所有剩余要素）",
      "applyHint": "点击“应用”以激活基于规则的渲染。",
      "rulesApplyLive": "规则更改会立即应用到地图，无需单独的应用步骤。",
      "proportionalSize": "比例符号",
      "sizeByValue": "按数值设置大小",
      "sizeField": "大小字段",
      "chooseField": "选择一个字段…",
      "minValue": "最小值",
      "maxValue": "最大值",
      "minSize": "最小大小 (px)",
      "maxSize": "最大大小 (px)",
      "sizeLegend": "大小图例",
      "fillPattern": "填充图案",
      "patternColor": "图案颜色",
      "patternSvg": "图案 SVG",
      "svgPlaceholder": "<svg xmlns='http://www.w3.org/2000/svg' ...>…</svg> 或 data/https URL",
      "marker": "标记",
      "useMarkerIcon": "使用标记图标",
      "markerShape": "标记形状",
      "markerColor": "标记颜色",
      "markerSize": "标记大小 (px)",
      "markerSvg": "标记 SVG",
      "markerShapes": {
        "circle": "圆形",
        "square": "方形",
        "triangle": "三角形",
        "diamond": "菱形",
        "star": "星形",
        "cross": "十字形",
        "pin": "图钉",
        "custom": "自定义 SVG"
      },
      "fillPatterns": {
        "none": "无（纯色填充）",
        "hatch": "斜线填充",
        "crossHatch": "交叉斜线填充",
        "horizontal": "水平线",
        "vertical": "垂直线",
        "dots": "点状",
        "svg": "自定义 SVG"
      },
      "transparent": "透明",
      "transparentSwatch": "无颜色（透明）。点击以选择颜色。",
      "styleType": "样式类型",
      "attribute": "属性",
      "classes": "分类数",
      "allClasses": "全部（{{total}}）",
      "scheme": "分级方案",
      "stops": "分级点",
      "categories": "类别",
      "classColor": "分类 {{index}} 颜色",
      "classColorPick": "从屏幕上拾取分类 {{index}} 的颜色",
      "classValue": "分类 {{index}} 值",
      "colorExpression": "颜色表达式",
      "applyStyleType": "应用样式类型",
      "pointRenderer": "点渲染方式",
      "pointRendererSingle": "单一符号",
      "pointRendererHeatmap": "热力图",
      "pointRendererClustered": "聚类",
      "heatmapRadius": "热力图半径",
      "heatmapIntensity": "热力图强度",
      "clusterRadius": "聚类半径 (px)",
      "clusterMaxZoom": "聚类最大缩放级别",
      "strokeWidthUnit": "描边宽度单位",
      "strokeWidthUnitPixels": "像素（屏幕上恒定）",
      "strokeWidthUnitMeters": "米（随地图缩放）",
      "textHaloColor": "文字光晕颜色",
      "textHaloWidth": "文字光晕宽度",
      "schemeEqualInterval": "等间距",
      "schemeQuantile": "分位数",
      "schemeNaturalBreaks": "自然间断点",
      "schemeTopValues": "最常见值",
      "schemeAlphabetical": "按字母顺序",
      "schemeFirstValues": "前若干值",
      "errorChooseAttribute": "请为此样式模式选择一个属性。",
      "errorAttributesUnavailable": "无法加载此图层的属性值。",
      "errorProportionalSizeField": "大小字段必须为数值型，且包含多个不同的值。",
      "errorGraduatedStops": "渐变分级样式至少需要两个数值分级点。",
      "errorCategorizedStops": "分类符号样式至少需要一个类别。",
      "invertedFill": "反转填充",
      "invertedFillHint": "填充要素外部区域"
    },
    "suggestions": {
      "title": "样式建议",
      "dismiss": "关闭建议",
      "categorize": "按 {{field}} 分类",
      "graduate": "按 {{field}} 分级",
      "heatmap": "热力图"
    },
    "selectLayerHint": "选择要编辑样式的图层。",
    "layerOrderDefault": "图层顺序（默认）",
    "increaseValue": "增加{{label}}",
    "decreaseValue": "减少{{label}}",
    "visualization": "可视化",
    "mode2d": "2D",
    "mode3dExtrusion": "3D 拉伸",
    "noControls": "此图层类型尚不支持样式控件。",
    "selectedLayerType": "所选图层类型：{{type}}",
    "footerDeck": "更改会实时应用于 DuckDB deck.gl 图层样式。",
    "footerMaplibre": "更改会实时应用于 MapLibre 绘制属性。",
    "pluginPaintedFooter": "此图层由其插件绘制，插件提供了自己的样式控件。",
    "extrusion": {
      "color": "拉伸颜色",
      "opacity": "拉伸不透明度",
      "advanced": "高级高度表达式",
      "heightExpression": "高度表达式",
      "heightProperty": "高度属性",
      "heightScale": "高度缩放",
      "base": "基础高度",
      "apply": "应用 3D 拉伸",
      "footer": "3D 拉伸设置将在保存时应用。"
    },
    "expressionLabels": {
      "style": "样式表达式",
      "color": "颜色表达式",
      "height": "高度表达式"
    },
    "expressionErrors": {
      "notArray": "{{label}}必须是 JSON 数组表达式。",
      "notOperator": "{{label}}必须以运算符开头，例如 [\"==\", [\"get\", \"field\"], value]。",
      "notJson": "{{label}}不是有效的 JSON：{{message}}"
    },
    "expressionBuilder": {
      "title": "表达式构建器",
      "openBuilder": "打开表达式构建器",
      "openBuilderForRule": "为规则 {{index}} 打开表达式构建器",
      "expressionLabel": "表达式",
      "clear": "清除表达式",
      "valid": "表达式有效。",
      "apply": "应用",
      "preview": "预览",
      "previewEmpty": "输入表达式以查看实时预览。",
      "previewNoFeatures": "没有可用于预览的要素。",
      "sampleFeature": "第 {{index}} 个要素，共 {{count}} 个",
      "previousFeature": "上一个要素",
      "nextFeature": "下一个要素",
      "filterMatches": "匹配此要素",
      "filterNoMatch": "不匹配此要素",
      "fields": "字段",
      "noFields": "此图层没有属性字段。",
      "insertField": "插入字段 {{name}}",
      "functionsHeading": "函数",
      "functionSearch": "搜索函数",
      "noFunctionMatches": "没有匹配搜索的函数。",
      "variables": "变量",
      "variablesHint": "应用表达式时，变量会被替换为其当前值。",
      "categories": {
        "data": "数据与查找",
        "decision": "条件与比较",
        "math": "数学",
        "string": "字符串",
        "conversion": "类型转换",
        "camera": "缩放与颜色"
      },
      "functions": {
        "get": "返回指定名称的要素属性值。",
        "has": "当要素具有指定名称的属性时为真。",
        "id": "返回要素的 id。",
        "properties": "返回要素的完整属性对象。",
        "geometryType": "返回要素的几何类型（Point、LineString、Polygon 等）。",
        "at": "返回数组中指定索引处的元素。",
        "in": "当第一个值包含在第二个值（字符串或数组）中时为真。",
        "indexOf": "返回第一个值在第二个值中的位置，未找到时返回 -1。",
        "length": "返回字符串或数组的长度。",
        "literal": "在表达式中嵌入字面量数组或对象。",
        "typeofOp": "返回值的类型名称。",
        "caseOp": "返回第一个条件为真的输出，否则返回后备值。",
        "match": "将输入与列出的值比较并返回匹配的输出。",
        "coalesce": "返回第一个非空值。",
        "eq": "当两个值相等时为真。",
        "neq": "当两个值不同时为真。",
        "gt": "当第一个值大于第二个值时为真。",
        "gte": "当第一个值大于或等于第二个值时为真。",
        "lt": "当第一个值小于第二个值时为真。",
        "lte": "当第一个值小于或等于第二个值时为真。",
        "all": "当所有条件都为真时为真。",
        "any": "当至少一个条件为真时为真。",
        "not": "对布尔值取反。",
        "add": "数值相加。",
        "subtract": "从第一个数中减去第二个数。",
        "multiply": "数值相乘。",
        "divide": "用第一个数除以第二个数。",
        "modulo": "返回除法的余数。",
        "power": "返回第一个数的第二个数次幂。",
        "abs": "返回绝对值。",
        "ceil": "向上取整到最接近的整数。",
        "floor": "向下取整到最接近的整数。",
        "round": "四舍五入到最接近的整数。",
        "sqrt": "返回平方根。",
        "ln": "返回自然对数。",
        "log10": "返回以 10 为底的对数。",
        "min": "返回其中的最小值。",
        "max": "返回其中的最大值。",
        "concat": "将多个值连接为一个字符串。",
        "upcase": "将字符串转换为大写。",
        "downcase": "将字符串转换为小写。",
        "slice": "返回字符串或数组的一部分。",
        "toNumber": "将值转换为数字。",
        "toString": "将值转换为字符串。",
        "toBoolean": "将值转换为 true 或 false。",
        "toColor": "将值转换为颜色。",
        "zoom": "当前地图缩放级别（由地图实时求值）。",
        "interpolate": "随输入变化在输出之间平滑过渡。",
        "step": "在给定的输入阈值处返回阶梯式输出。",
        "rgb": "由红、绿、蓝（0-255）构建颜色。",
        "rgba": "由红、绿、蓝和透明度构建颜色。"
      }
    },
    "decorations": {
      "heading": "线条装饰",
      "typeNone": "无",
      "typeArrow": "箭头",
      "typeTriangle": "三角形",
      "typeCircle": "圆形",
      "typeSquare": "方形",
      "color": "装饰颜色",
      "size": "符号大小 (px)",
      "spacing": "间距 (px)"
    },
    "generator": {
      "heading": "几何生成器",
      "type": "派生几何",
      "typeNone": "无",
      "typeCentroid": "质心",
      "typeBoundingBox": "外接矩形",
      "typeConvexHull": "凸包",
      "typeBuffer": "缓冲区",
      "bufferDistance": "缓冲距离 (m)",
      "fillColor": "填充颜色",
      "strokeColor": "轮廓颜色",
      "strokeWidth": "轮廓宽度 (px)",
      "opacity": "填充不透明度",
      "circleRadius": "点半径 (px)"
    },
    "attributeForm": {
      "heading": "属性表单",
      "empty": "尚未配置字段。为字段指定编辑控件、约束或可见性规则。",
      "configureField": "配置字段",
      "field": "字段",
      "selectField": "选择字段…",
      "widgetLabel": "编辑控件",
      "widget": {
        "text": "文本",
        "number": "数字",
        "range": "范围",
        "checkbox": "复选框",
        "date": "日期",
        "valueMap": "值映射"
      },
      "alias": "别名",
      "required": "必填",
      "requiredTag": "必填",
      "constraintTag": "约束",
      "visibilityTag": "可见性",
      "valueMap": "值映射条目",
      "valueMapPlaceholder": "residential=Residential\ncommercial=Commercial",
      "valueMapHint": "每行一个条目：值 或 值=标签。",
      "min": "最小值",
      "max": "最大值",
      "step": "步长",
      "constraintExpression": "约束表达式",
      "constraintPlaceholder": "[\">\", [\"get\", \"population\"], 0]",
      "constraintDescription": "约束说明",
      "constraintDescriptionPlaceholder": "约束不满足时显示",
      "visibilityExpression": "可见性表达式",
      "visibilityPlaceholder": "[\"==\", [\"get\", \"type\"], \"school\"]",
      "invalidExpression": "表达式无效",
      "openBuilder": "打开表达式构建器",
      "edit": "编辑字段配置",
      "remove": "移除字段配置",
      "cancel": "取消",
      "save": "保存",
      "noFields": "该图层没有可配置的属性字段。",
      "minMaxInvalid": "最小值必须小于或等于最大值。"
    }
  },
  "layers": {
    "panelCollapsedLabel": "图层（已折叠）",
    "expand": "展开图层",
    "collapse": "折叠图层",
    "resizePanel": "调整图层面板大小",
    "dragToReorder": "拖动以重新排序",
    "saveGeometryEdits": "保存几何编辑",
    "discardGeometryEdits": "放弃几何编辑",
    "moveUp": "上移",
    "moveDown": "下移",
    "zoomToLayer": "缩放至图层",
    "layerActions": "图层操作",
    "metadata": "元数据",
    "removeLayer": "移除图层",
    "identifyFeatures": "识别要素",
    "identifyDeactivate": "停用识别",
    "identifyInspectPixels": "检查像素值",
    "identifyStopInspectPixels": "停止检查像素值",
    "identifyUnavailable": "识别功能仅适用于矢量、WMS 和 COG 图层",
    "exportGeoTiff": "GeoTIFF (COG)",
    "extractSubset": "提取子集…",
    "stylesMenu": "样式",
    "exportMapboxStyle": "导出为 Mapbox GL 样式",
    "exportSldStyle": "导出为 OGC SLD",
    "exportQmlStyle": "导出为 QGIS QML",
    "exportStyleSuccess": "样式已导出。",
    "exportStyleDataNotReady": "图层数据尚未准备就绪。请稍后重试。",
    "exportStyleNeedsFeatures": "样式导出需要包含要素的矢量图层。",
    "exportStyleError": "无法导出此图层的样式。",
    "importStyle": "导入样式（Mapbox GL / SLD / QML）…",
    "openStyleManager": "已保存的样式（样式管理器）…",
    "importStyleSuccess": "样式已导入。",
    "importStyleInvalid": "该文件不是有效的 JSON、SLD 或 QML。",
    "importStyleNoMatch": "无法从该样式中读取任何符号系统。",
    "importStyleError": "无法导入此样式。",
    "copyStyle": "复制样式",
    "pasteStyle": "粘贴样式",
    "pasteStyleFrom": "粘贴来自“{{name}}”的样式",
    "pasteStyleEmpty": "请先复制某个图层的样式",
    "pasteStyleMismatch": "复制的样式属于其他类型的图层",
    "styleCopied": "已复制“{{name}}”的样式。",
    "stylePasted": "已粘贴“{{name}}”的样式。",
    "saveToLibrary": "保存到“我的数据”",
    "savedToLibrary": "已将“{{name}}”保存到“我的数据”。",
    "saveToLibraryNoSource": "此图层没有可重新添加的数据源，因此无法保存到“我的数据”。",
    "saveToLibraryTooLarge": "此图层的要素是其唯一副本，体积过大，无法保存到“我的数据”。",
    "saveToLibraryConfigTooLarge": "此图层保存的配置对“我的数据”而言过大。",
    "bindToTimeSlider": "绑定到时间轴…",
    "bindTimeDimensionToTimeSlider": "将时间维度绑定到时间轴",
    "bindNoTimeDimension": "该图层没有可读取的时间维度。",
    "unbindFromTimeSlider": "取消绑定时间轴",
    "bindDialogDescription": "在拖动时间轴时，按日期或时间戳属性筛选此图层的要素。图层将保留其样式和不透明度。",
    "bindScanning": "正在扫描要素中的日期和时间戳属性…",
    "bindNoProperty": "在此图层中未找到日期或时间戳属性。",
    "bindNoTimestamps": "所选属性没有可读取的时间戳。请选择其他属性。",
    "bindTileNoFeatures": "此图层尚未加载任何瓦片。请缩放至图层后重试。",
    "bindRange": "时间范围",
    "bindRangeEnd": "时间范围结束",
    "bindRangeHint": "取自目前已加载的瓦片，因此可能比完整数据集更窄。请输入年份（1958）或日期（1958-03-01）。",
    "bindRangeInvalid": "请将两个边界都输入为年份（1958）或日期（1958-03-01）。",
    "bindProperty": "时间属性",
    "bindWindow": "显示要素",
    "bindWindowStep": "在当前步骤内",
    "bindWindowWide": "在前后一个步骤范围内",
    "bindWindowWider": "在前后三个步骤范围内",
    "bindWindowCumulative": "截至当前步骤的全部内容（累积）",
    "bindCancel": "取消",
    "bindConfirm": "绑定",
    "openRasterStylePanel": "编辑栅格样式…",
    "exportRasterSuccess": "栅格已导出。",
    "exportRasterError": "无法导出此栅格。",
    "saveEditsToSource": "保存编辑到源文件",
    "saveEditsSuccess": "已将 {{count}} 个要素保存到源文件。",
    "saveEditsNoFeatures": "此图层没有可保存的要素。",
    "saveEditsError": "无法将编辑保存到源文件。",
    "saveEditsToPostgis": "保存编辑到 PostGIS 表",
    "saveEditsPostgisSuccess": "已保存到 {{table}}：新增 {{inserted}} 个，更新 {{updated}} 个，删除 {{deleted}} 个。",
    "saveEditsPostgisSkippedFields": "没有匹配表列的字段未被保存：{{fields}}。",
    "saveEditsPostgisRefreshWarning": "编辑已保存到表，但刷新图层失败。请在再次保存前重新加载该图层，否则新要素可能会被重复插入。",
    "saveEditsPostgisNoConnection": "此图层没有可用的 PostgreSQL 连接。请在“添加数据 > PostgreSQL”中重新连接，然后重试。",
    "typeBasemap": "底图",
    "searchPlaces": "搜索地点",
    "searchPlacesPlaceholder": "搜索地点、坐标或 H3 单元...",
    "searchPlacesSearching": "正在搜索...",
    "searchPlacesNoResults": "未找到地点",
    "searchPlacesError": "搜索失败。请重试。",
    "searchPlacesClear": "清除搜索",
    "searchPlacesGoToCoordinate": "前往 {{coordinate}}",
    "searchPlacesGoToH3Cell": "前往 H3 单元 {{cell}}（分辨率 {{resolution}}）",
    "background": "背景",
    "backgroundCannotReorder": "背景无法重新排序",
    "hideBackground": "隐藏背景",
    "showBackground": "显示背景",
    "opacity": "不透明度",
    "opacityExactHint": "双击以输入精确值",
    "opacityFor": "{{name}} 的不透明度",
    "opacityValueInputAria": "{{label}} 值",
    "opacityValueEditAria": "编辑 {{label}} 值",
    "basemapOpacity": "底图不透明度",
    "newGroup": "新建分组",
    "basemaps": "底图",
    "geoEditor": "GeoEditor",
    "collapseGroup": "折叠分组",
    "expandGroup": "展开分组",
    "hideGroup": "隐藏分组",
    "showGroup": "显示分组",
    "renameGroup": "重命名分组",
    "moveGroupUp": "上移分组",
    "moveGroupDown": "下移分组",
    "ungroupKeepLayers": "取消分组（保留图层）",
    "deleteGroupAndLayers": "删除分组及图层",
    "groupActions": "分组操作",
    "addDataToGroup": "向分组添加数据",
    "groupOpacity": "不透明度",
    "groupOpacityAria": "{{name}} 分组不透明度",
    "doubleClickToRename": "双击以重命名",
    "doubleClickToChangeBasemap": "双击以更改底图",
    "renameNamed": "重命名 {{name}}",
    "newGroupFromLayer": "从图层新建分组",
    "newGroupFromSelectedLayers": "从选中图层新建分组",
    "moveToGroup": "移动到分组",
    "moveSelectedToGroup": "将选中图层移动到分组",
    "removeFromGroup": "从分组中移除",
    "hiddenByGroup": "因所属分组不可见而隐藏",
    "empty": "没有数据图层。请从工具栏添加数据。",
    "emptyBeginner": "尚无图层。可通过“插件 → 底图”添加底图，或通过“添加数据”菜单添加您自己的数据。",
    "hideAllLayers": "隐藏所有图层",
    "showAllLayers": "显示所有图层",
    "dragNamedToReorder": "拖动 {{name}} 以重新排序",
    "hideLayer": "隐藏图层",
    "showLayer": "显示图层",
    "editingGeometry": "正在编辑几何",
    "rename": "重命名",
    "materializeToEditable": "转换为可编辑图层",
    "finishEditingGeometry": "完成几何编辑",
    "editGeometry": "编辑几何",
    "openAttributeTable": "打开属性表",
    "openRasterAttributeTable": "打开栅格属性表",
    "export": "导出",
    "refresh": "刷新",
    "autoRefreshOn": "自动刷新已开启",
    "lastSynced": "上次同步 {{time}}",
    "syncErrorStatus": "同步失败：{{message}}",
    "autoRefresh": "自动刷新",
    "refreshWfsGeojsonOnly": "仅限 WFS 和 GeoJSON URL",
    "editSqlQuery": "在 SQL 工作区中编辑查询",
    "reloadFromDisk": "从磁盘重新加载",
    "watchFile": "监视文件变化",
    "watchError": "无法监视此文件的变化。",
    "autoRefreshDialogTitle": "{{name}} 自动刷新",
    "layerFallback": "图层",
    "autoRefreshDialogDescription": "按固定间隔从数据源重新加载此图层。",
    "interval": "间隔",
    "custom": "自定义",
    "customIntervalSeconds": "自定义间隔（秒）",
    "refreshFailurePolicy": "刷新失败时",
    "refreshFailureKeepLast": "保留上次成功获取的数据",
    "refreshFailureClear": "清空该图层",
    "apply": "应用",
    "enterPositiveSeconds": "请输入正的秒数。",
    "metadataDialogTitle": "{{name}} 元数据",
    "metadataDialogDescription": "图层元数据和数据源信息",
    "metadataRasterLoading": "正在读取栅格元数据…",
    "metadataRasterError": "无法读取该栅格的元数据。",
    "resizeMetadataDialog": "调整元数据对话框大小",
    "removeLayerConfirmTitle": "是否移除图层？",
    "removeLayerConfirmBody": "此操作会从项目和地图中移除 {{name}}。",
    "thisLayerFallback": "此图层",
    "refreshingAuto": "正在自动刷新...",
    "refreshing": "正在刷新...",
    "refreshVectorControlError": "无法刷新此图层。请尝试重新打开“添加矢量图层”面板。",
    "refreshed": "已刷新。",
    "refreshedCount": "已刷新 {{count}} 个要素。",
    "refreshError": "无法刷新此图层。",
    "exportNeedsFeatures": "导出需要包含要素的矢量图层。",
    "exportedWithWarnings": "图层已导出。{{warnings}}",
    "exported": "图层已导出。",
    "exportLayerError": "无法导出此图层。",
    "refreshIntervals": {
      "off": "关闭",
      "s15": "15 秒",
      "s30": "30 秒",
      "m1": "1 分钟",
      "m5": "5 分钟",
      "m15": "15 分钟"
    }
  },
  "timeSliderSymbology": {
    "bands": "波段",
    "bandsPlaceholder": "自动",
    "bandsHint": "从 1 开始的波段编号，用逗号分隔（例如 4,3,2）。留空则使用渲染器默认值。",
    "bandsInvalid": "请输入 1 或更大的整数波段编号，用逗号分隔。",
    "colormapNone": "无（RGB / 多波段）"
  },
  "rasterSymbology": {
    "gamma": "伽马值",
    "min": "最小值",
    "max": "最大值",
    "value": "值",
    "autoPlaceholder": "自动",
    "colorRampLabel": "色带",
    "reverseRamp": "反转色带",
    "customRamp": "自定义…",
    "customColors": "自定义颜色",
    "customColorsValid": "{{count}} 种颜色，从低到高。使用“反转”可翻转顺序。",
    "customColorsHint": "请输入至少两个十六进制颜色代码，用逗号或空格分隔。",
    "imagePalette": "图像调色板",
    "createLegend": "从调色板创建图例",
    "createLegendHint": "使用栅格的调色板颜色，为每个像素值添加一个图例项。之后可将各项重命名为分类名称。",
    "createLegendPending": "正在读取调色板…",
    "createLegendEmpty": "未找到此栅格的调色板颜色。",
    "createLegendError": "无法读取栅格调色板。",
    "heading": "栅格符号化",
    "renderMode": "渲染模式",
    "modeSingle": "单波段（伪彩色）",
    "modeIndex": "指数（归一化差值）",
    "modeRgb": "RGB 合成",
    "band": "波段",
    "stretch": "拉伸",
    "stretchLinear": "线性",
    "stretchLog": "对数",
    "stretchSqrt": "平方根",
    "index": "指数",
    "classifyToggle": "分为离散类别",
    "method": "方法",
    "methodEqualInterval": "等间隔",
    "methodQuantile": "分位数",
    "methodManual": "手动分级",
    "classes": "类别数",
    "classEdges": "分级边界",
    "noData": "无数据值",
    "nodataAuto": "自动（来自文件）",
    "nodataOff": "渲染所有像元",
    "nodataCustom": "自定义值"
  },
  "rasterAttributeTable": {
    "title": "栅格属性表",
    "resize": "调整栅格属性表大小",
    "noRasterSelected": "选择一个栅格图层以查看其属性表。",
    "computing": "正在读取栅格类别…",
    "empty": "还没有类别。使用重新计算来构建表格。",
    "band": "波段",
    "bandOption": "波段 {{band}}",
    "close": "关闭栅格属性表",
    "noSource": "此栅格没有可读取的源文件。",
    "readError": "无法读取栅格数据。",
    "bandMissing": "在此栅格中找不到波段 {{band}}。",
    "notCategorical": "此波段的不同值太多，不是分类数据。",
    "tooManyClasses": "应用符号化最多支持 {{max}} 个类别。",
    "symbologyApplied": "已从表格应用符号化。",
    "noPalette": "此栅格没有内嵌调色板。",
    "legendError": "无法打开图例。",
    "csvError": "无法导出 CSV 文件。",
    "recomputeTitle": "扫描栅格并重建类别表",
    "applyTitle": "按表格类别为栅格着色",
    "paletteTitle": "从栅格内嵌调色板重置颜色",
    "legendTitle": "用表格类别填充地图图例",
    "csvTitle": "将表格导出为 CSV",
    "buttons": {
      "recompute": "重新计算",
      "apply": "应用符号化",
      "palette": "从调色板",
      "legend": "到图例",
      "csv": "CSV"
    },
    "columns": {
      "value": "值",
      "count": "计数",
      "percent": "%",
      "area_m2": "面积 (m²)",
      "area_ha": "面积 (公顷)",
      "area_km2": "面积 (km²)",
      "color": "颜色",
      "label": "标注"
    },
    "rowColor": "值 {{value}} 的颜色",
    "rowLabel": "值 {{value}} 的标注"
  },
  "raster": {
    "filePickerLabel": "栅格",
    "cogConvertConfirm": "“{{name}}”是普通（条带式）GeoTIFF，无法直接显示。是否立即将其转换为云优化 GeoTIFF 并加载？",
    "cogConvertRemoteConfirm": "“{{name}}”是普通（条带式）GeoTIFF，无法直接显示。要显示它，需要下载整个文件并在浏览器中将其转换为云优化 GeoTIFF，对于大文件而言这可能会很慢且占用大量内存。是否继续？",
    "cogConvertLargeConfirm": "“{{name}}”是一个 {{width}}×{{height}} 的大型 GeoTIFF，并非云优化 GeoTIFF。在浏览器中转换它可能会很慢且占用大量内存。是否仍要转换并加载？",
    "cogConvertFailed": "无法将“{{name}}”转换为云优化 GeoTIFF。请尝试使用 gdal_translate 或 rio cogeo 进行转换，然后加载结果。",
    "rasterDownloadFailed": "无法下载“{{name}}”。服务器可能响应缓慢、无法访问或阻止跨域请求，或者文件可能过大而无法保存在内存中。请检查 URL 并重试。",
    "rasterNotGeotiff": "“{{name}}”未返回 GeoTIFF。服务器可能返回了错误或登录页面。请检查 URL 并重试。"
  },
  "attributeForm": {
    "error": {
      "required": "必须提供值",
      "number": "必须是数字",
      "range": "必须介于 {{min}} 和 {{max}} 之间",
      "rangeMin": "必须至少为 {{min}}",
      "rangeMax": "不得超过 {{max}}",
      "valueMap": "值不在允许列表中",
      "constraint": "不满足约束条件"
    }
  },
  "legendPanel": {
    "edit": "编辑图例",
    "done": "完成编辑",
    "close": "关闭图例",
    "empty": "没有可显示的图层。",
    "renameTitle": "图例标题",
    "renameEntry": "重命名 {{name}}",
    "renameItem": "重命名 {{name}}",
    "moveUp": "上移",
    "moveDown": "下移",
    "hideEntry": "从图例中隐藏",
    "showEntry": "在图例中显示",
    "hideItem": "隐藏条目",
    "showItem": "显示条目",
    "customizeEntry": "自定义条目",
    "resetEntry": "重置为自动",
    "removeSection": "移除分节",
    "addSection": "添加自定义分节",
    "newSectionTitle": "新分节",
    "newItemLabel": "新条目",
    "addItem": "添加条目",
    "removeItem": "移除条目",
    "itemColor": "条目颜色",
    "position": "位置",
    "positions": {
      "top-left": "左上",
      "top-right": "右上",
      "bottom-left": "左下",
      "bottom-right": "右下"
    },
    "low": "低",
    "high": "高",
    "addFromDictionary": "从字典添加",
    "dictionaryHint": "包含 {\"标签\": \"颜色\"} 键值对的 JSON 对象，或每行一个“标签: 颜色”。",
    "dictionaryAdd": "添加分节",
    "cancel": "取消",
    "resize": "调整图例大小",
    "collapseEntry": "折叠分节",
    "expandEntry": "展开分节",
    "collapsePanel": "折叠图例",
    "expandPanel": "展开图例",
    "exportJson": "导出为 JSON"
  },
  "errorBoundary": {
    "title": "出错了",
    "description": "GeoLibre 遇到意外错误，无法继续。您的工作可能尚未保存 — 请先尝试恢复，再重新加载。",
    "tryAgain": "重试",
    "reload": "重新加载应用",
    "sectionFailed": "{{label}} 渲染失败。GeoLibre 的其余部分仍可使用。"
  },
  "commandPalette": {
    "title": "命令面板",
    "searchAria": "搜索命令",
    "searchPlaceholder": "搜索命令…",
    "listAria": "命令",
    "noMatches": "没有匹配的命令"
  },
  "shortcuts": {
    "title": "键盘快捷键",
    "description": "按 {{shortcut}} 可在命令面板中搜索任何操作。",
    "groupGeneral": "常规",
    "groupMapNavigation": "地图导航",
    "openCommandPalette": "打开命令面板",
    "showKeyboardShortcuts": "显示键盘快捷键",
    "nav": {
      "zoomIn": "放大",
      "zoomOut": "缩小",
      "pan": "平移",
      "rotate": "旋转",
      "tilt": "倾斜"
    }
  },
  "diagnostics": {
    "title": "诊断",
    "description": "近期的网络请求、MapLibre 错误、控制台警告和运行时异常。",
    "countTotal_other": "共 {{count}} 条",
    "countErrors_other": "{{count}} 个错误",
    "countWarnings_other": "{{count}} 个警告",
    "countNetwork_other": "{{count}} 个网络请求",
    "countNetworkErrors_other": "{{count}} 个网络错误",
    "logAllRequests": "记录所有网络请求",
    "logAllRequestsHint": "从现在起记录成功和中止的网络请求；记录关闭期间发出的请求不会补录。默认关闭，因为记录每个请求会拖慢应用。",
    "copyJson": "复制 JSON",
    "copied": "已复制",
    "clear": "清空",
    "emptyAll": "未捕获任何诊断信息。",
    "emptyError": "未捕获任何错误诊断信息。",
    "emptyWarning": "未捕获任何警告诊断信息。",
    "emptyInfo": "未捕获任何信息类诊断信息。",
    "emptyNetwork": "未捕获任何网络诊断信息。",
    "emptyNetworkError": "未捕获任何网络错误诊断信息。"
  },
  "shell": {
    "workspaceTitle": "GeoLibre 地图工作区",
    "section": {
      "toolbar": "工具栏",
      "sharedLeftSidebar": "共享左侧栏",
      "pluginPanelLeftOfLayers": "插件面板（图层左侧）",
      "layerPanel": "图层面板",
      "pluginPanelRightOfLayers": "插件面板（图层右侧）",
      "map": "地图",
      "pluginFloatingPanels": "插件浮动面板",
      "selectionPanels": "选择面板",
      "sunSimulationPanel": "日照模拟面板",
      "routeAnimationPanel": "路线动画面板",
      "flightSimulatorPanel": "飞行模拟器面板",
      "sharedRightSidebar": "共享右侧栏",
      "pluginPanelLeftOfStyle": "插件面板（样式左侧）",
      "stylePanel": "样式面板",
      "pluginPanelRightOfStyle": "插件面板（样式右侧）",
      "notebook": "笔记本",
      "attributeTable": "属性表",
      "rasterAttributeTable": "栅格属性表",
      "dashboard": "仪表板",
      "pythonConsole": "Python 控制台",
      "sqlWorkspace": "SQL 工作区",
      "assistant": "助手",
      "statusBar": "状态栏"
    }
  },
  "attributeStats": {
    "title": "字段统计",
    "description": "“{{layer}}”中某个字段的汇总统计。",
    "noFields": "此图层没有可汇总的字段。",
    "field": "字段",
    "scope": "范围",
    "scopeAll": "全部要素（{{total}}）",
    "scopeFiltered": "已筛选（{{total}}）",
    "copiedToClipboard": "已复制到剪贴板。",
    "copy": "复制",
    "copyHeader": "字段统计 — {{field}}",
    "copyHeaderFiltered": "字段统计 — {{field}}（已筛选）",
    "noValues": "没有可汇总的值。",
    "mostFrequent": "最常见的值",
    "noPopulated": "没有已填充的值。",
    "stat": {
      "count": "计数",
      "nulls": "空值",
      "nonNumeric": "非数值",
      "unique": "唯一值",
      "min": "最小值",
      "max": "最大值",
      "mean": "平均值",
      "median": "中位数",
      "std": "标准差",
      "sum": "总和"
    }
  },
  "columnExplorer": {
    "title": "字段浏览器",
    "description": "“{{layer}}”中每个字段的类型、完整度和分布。",
    "noFields": "此图层没有可浏览的字段。",
    "findField": "查找字段",
    "findFieldPlaceholder": "按名称筛选字段...",
    "scope": "范围",
    "scopeAll": "全部要素（{{total}}）",
    "scopeFiltered": "已筛选（{{total}}）",
    "fieldsShown": "{{total}} 个字段中的 {{shown}} 个",
    "noMatches": "没有字段匹配“{{search}}”。",
    "typeNumeric": "数值",
    "typeText": "文本",
    "completenessTitle": "已填充 {{populated}}，空值 {{nulls}}",
    "populated": "已填充 {{total}}",
    "null": "空值 {{total}}",
    "unique": "唯一值 {{total}}",
    "min": "最小值",
    "mean": "平均值",
    "max": "最大值",
    "noNumericValues": "没有可绘制的数值。",
    "distributionAria": "{{field}} 的分布：{{total}} 个值，从 {{min}} 到 {{max}}",
    "noPopulated": "没有已填充的值。",
    "moreValues": "另有 {{total}} 个值"
  },
  "stacPlugin": {
    "title": "STAC 目录",
    "footprintLayerName": "STAC 搜索范围",
    "catalogSearch": "在 STAC Index 中查找公共目录",
    "catalogSearchPlaceholder": "搜索目录名称…",
    "indexLoading": "正在加载 STAC Index…",
    "indexUnavailable": "STAC Index 不可用：请输入网址",
    "indexLoadFailed": "无法加载 STAC Index",
    "urlLabel": "STAC 目录或 API 网址",
    "connect": "连接",
    "connecting": "正在连接 STAC…",
    "connected": "已连接。请选择筛选条件并搜索。",
    "connectFailed": "无法连接到 STAC",
    "selectCatalog": "选择目录…",
    "noMatchingCatalogs": "没有匹配的目录",
    "catalogApiSuffix": " (API)",
    "catalogStaticSuffix": " (静态)",
    "kindApi": "STAC API",
    "kindStatic": "静态目录",
    "collectionsHint": "按住 Ctrl/Cmd 可选择多个集合；拖动底边可调整大小",
    "limitToExtent": "将搜索限制在当前地图范围",
    "bboxLabel": "边界框（西、南、东、北）",
    "bboxPlaceholder": "可选；将覆盖地图范围",
    "bboxInvalid": "请输入有效的边界框：西、南、东、北。",
    "drawBbox": "在地图上绘制边界框",
    "cancelDrawing": "取消绘制",
    "clearDrawnBbox": "清除绘制的边界框",
    "drawHint": "在地图上点击并拖动以绘制搜索边界框。",
    "drawnBbox": "绘制的边界框：{{bbox}}",
    "drawnBboxCleared": "已清除绘制的边界框。",
    "mapNotReady": "地图尚未准备好绘制。",
    "startDate": "开始日期",
    "endDate": "结束日期",
    "additionalParams": "附加搜索参数（JSON，仅限 STAC API）",
    "additionalInvalid": "附加搜索参数必须是 JSON 对象。",
    "searchItems": "搜索项目",
    "clearResults": "清除结果",
    "resultsCleared": "已清除搜索结果。",
    "searching": "正在搜索 STAC 项目…",
    "loadingMore": "正在加载更多项目…",
    "noResults": "没有符合这些筛选条件的 STAC 项目。",
    "searchFailed": "STAC 搜索失败",
    "showing": "正在显示 {{count}} 个项目。",
    "showingOfMatched": "正在显示 {{matched}} 个项目中的 {{count}} 个。",
    "loadMore": "加载更多",
    "renderOptions": "栅格渲染选项",
    "bands": "波段",
    "bandsPlaceholder": "例如 1 或 1,2,3（默认：自动）",
    "colormap": "色彩映射（仅限单波段）",
    "colormapDefault": "渲染器默认值",
    "minValue": "最小值",
    "maxValue": "最大值",
    "nodata": "NoData 值",
    "nodataPlaceholder": "将覆盖文件的 NoData 标签",
    "renderHint": "留空可让渲染器从 GeoTIFF 推断该值。选项仅适用于更改后添加的资源。",
    "initialStatus": "请从 STAC Index 中选择目录或输入网址。",
    "catalogInfo": "{{title}} · {{kind}}",
    "zoom": "缩放",
    "add": "添加",
    "download": "下载",
    "adding": "正在添加 {{asset}}…",
    "added": "已将 {{asset}} 添加到地图。",
    "addUnsupported": "只有 GeoTIFF/COG 和 GeoJSON 资源可以添加到地图",
    "addFailed": "无法添加资源",
    "cogUnsupported": "此 GeoLibre 主机无法可视化远程 GeoTIFF 资源"
  },
  "vectorExport": {
    "invalidKmlCoordinatesByPosition": "KML 导出无法写入第 {{position}} 个要素，因为它的坐标无效。",
    "invalidKmlCoordinatesById": "KML 导出无法写入 ID 为 {{id}} 的要素，因为它的坐标无效。"
  },
  "comments": {
    "title": "评论",
    "addDialogTitle": "添加审阅意见",
    "addDialogDescription": "在此项目上发布一条锚定的批注，供团队审阅或离线参考。",
    "authorNameLabel": "您的姓名（仅询问一次，自动保存）",
    "authorNamePlaceholder": "例如 张三或李四",
    "commentLabel": "意见 / 反馈",
    "commentPlaceholder": "在此输入您的审阅意见或反馈...",
    "confirmDelete": "确定要删除此意见讨论串吗？",
    "sessionDisconnected": "会话已断开。",
    "defaultAuthorName": "作者"
  },
  "s2Plugin": {
    "title": "S2 网格",
    "controlTitle": "S2 网格设置",
    "autoResolution": "自动分辨率",
    "resolution": "分辨率",
    "cellCount": "视图内有 {{count}} 个单元格",
    "tooManyCells": "当前视图超过了 {{limit}} 个单元格的上限。请放大地图或降低分辨率。",
    "fillColor": "填充颜色",
    "fillOpacity": "填充不透明度",
    "lineColor": "轮廓颜色",
    "lineWidth": "轮廓宽度",
    "showLabels": "显示单元格 ID",
    "identifyHint": "点击地图以识别 S2 单元格。",
    "selectedCell": "选中的单元格",
    "noSelection": "未选中单元格",
    "copyId": "复制 ID",
    "parent": "父单元格",
    "children": "子单元格",
    "neighbors": "相邻单元格",
    "center": "中心",
    "zoomToCell": "缩放至单元格",
    "addAsLayer": "将网格添加为图层",
    "exportGeoJson": "导出 GeoJSON",
    "exportCsv": "导出 CSV",
    "includeNeighbors": "包含所选单元格的相邻单元格",
    "includeParents": "包含所选单元格的父单元格"
  },
  "a5Plugin": {
    "title": "A5 网格",
    "controlTitle": "A5 网格设置",
    "autoResolution": "自动分辨率",
    "resolution": "分辨率",
    "cellCount": "视图内有 {{count}} 个单元格",
    "tooManyCells": "当前视图超过了 {{limit}} 个单元格的上限。请放大地图或降低分辨率。",
    "fillColor": "填充颜色",
    "fillOpacity": "填充不透明度",
    "lineColor": "轮廓颜色",
    "lineWidth": "轮廓宽度",
    "showLabels": "显示单元格 ID",
    "identifyHint": "点击地图以识别 A5 单元格。",
    "selectedCell": "选中的单元格",
    "noSelection": "未选中单元格",
    "copyId": "复制 ID",
    "parent": "父单元格",
    "children": "子单元格",
    "neighbors": "相邻单元格",
    "center": "中心",
    "zoomToCell": "缩放至单元格",
    "addAsLayer": "将网格添加为图层",
    "exportGeoJson": "导出 GeoJSON",
    "exportCsv": "导出 CSV",
    "includeNeighbors": "包含所选单元格的相邻单元格",
    "includeParents": "包含所选单元格的父单元格"
  },
  "dggridPlugin": {
    "title": "DGGRID",
    "controlTitle": "DGGRID 设置",
    "cellType": "单元格类型",
    "topologyHexagon": "六边形",
    "topologyDiamond": "菱形",
    "topologyTriangle": "三角形",
    "projection": "投影",
    "aperture": "孔径",
    "autoResolution": "自动分辨率",
    "resolution": "分辨率",
    "cellCount": "视图内有 {{count}} 个单元格",
    "tooManyCells": "当前视图超过了 {{limit}} 个单元格的上限。请放大地图或降低分辨率。",
    "fillColor": "填充颜色",
    "fillOpacity": "填充不透明度",
    "lineColor": "轮廓颜色",
    "lineWidth": "轮廓宽度",
    "showLabels": "显示单元格 ID",
    "identifyHint": "点击地图以识别 DGGRID 单元格。",
    "selectedCell": "选中的单元格",
    "noSelection": "未选中单元格",
    "copyId": "复制 ID",
    "parent": "父单元格",
    "children": "子单元格",
    "neighbors": "相邻单元格",
    "center": "中心",
    "zoomToCell": "缩放至单元格",
    "addAsLayer": "将网格添加为图层",
    "exportGeoJson": "导出 GeoJSON",
    "exportCsv": "导出 CSV",
    "includeNeighbors": "包含所选单元格的相邻单元格",
    "includeParents": "包含所选单元格的父单元格"
  },
  "dggalPlugin": {
    "title": "DGGAL",
    "controlTitle": "DGGAL 设置",
    "gridType": "DGGS 类型",
    "autoResolution": "自动分辨率",
    "resolution": "分辨率",
    "cellCount": "视图内有 {{count}} 个单元格",
    "tooManyCells": "当前视图超过了 {{limit}} 个单元格的上限。请放大地图或降低分辨率。",
    "fillColor": "填充颜色",
    "fillOpacity": "填充不透明度",
    "lineColor": "轮廓颜色",
    "lineWidth": "轮廓宽度",
    "showLabels": "显示单元格 ID",
    "identifyHint": "点击地图以识别 DGGAL 单元格。",
    "selectedCell": "选中的单元格",
    "noSelection": "未选中单元格",
    "copyId": "复制 ID",
    "parent": "父单元格",
    "children": "子单元格",
    "neighbors": "相邻单元格",
    "center": "中心",
    "zoomToCell": "缩放至单元格",
    "addAsLayer": "将网格添加为图层",
    "exportGeoJson": "导出 GeoJSON",
    "exportCsv": "导出 CSV",
    "includeNeighbors": "包含所选单元格的相邻单元格",
    "includeParents": "包含所选单元格的父单元格"
  },
  "olcPlugin": {
    "title": "OLC",
    "controlTitle": "OLC 设置",
    "autoResolution": "自动分辨率",
    "resolution": "分辨率",
    "cellCount": "视图内有 {{count}} 个单元格",
    "tooManyCells": "当前视图超过了 {{limit}} 个单元格的上限。请放大地图或降低分辨率。",
    "fillColor": "填充颜色",
    "fillOpacity": "填充不透明度",
    "lineColor": "轮廓颜色",
    "lineWidth": "轮廓宽度",
    "showLabels": "显示单元格 ID",
    "identifyHint": "点击地图以识别 OLC 单元格。",
    "selectedCell": "选中的单元格",
    "noSelection": "未选中单元格",
    "copyId": "复制 ID",
    "parent": "父单元格",
    "children": "子单元格",
    "neighbors": "相邻单元格",
    "center": "中心",
    "zoomToCell": "缩放至单元格",
    "addAsLayer": "将网格添加为图层",
    "exportGeoJson": "导出 GeoJSON",
    "exportCsv": "导出 CSV",
    "includeNeighbors": "包含所选单元格的相邻单元格",
    "includeParent": "包含所选单元格的父单元格"
  },
  "geohashPlugin": {
    "title": "Geohash",
    "controlTitle": "Geohash 设置",
    "autoResolution": "自动分辨率",
    "resolution": "分辨率",
    "cellCount": "视图内有 {{count}} 个单元格",
    "tooManyCells": "当前视图超过了 {{limit}} 个单元格的上限。请放大地图或降低分辨率。",
    "fillColor": "填充颜色",
    "fillOpacity": "填充不透明度",
    "lineColor": "轮廓颜色",
    "lineWidth": "轮廓宽度",
    "showLabels": "显示单元格 ID",
    "identifyHint": "点击地图以识别 Geohash 单元格。",
    "selectedCell": "选中的单元格",
    "noSelection": "未选中单元格",
    "copyId": "复制 ID",
    "parent": "父单元格",
    "children": "子单元格",
    "neighbors": "相邻单元格",
    "center": "中心",
    "zoomToCell": "缩放至单元格",
    "addAsLayer": "将网格添加为图层",
    "exportGeoJson": "导出 GeoJSON",
    "exportCsv": "导出 CSV",
    "includeNeighbors": "包含所选单元格的相邻单元格",
    "includeParent": "包含所选单元格的父单元格"
  },
  "tilecodePlugin": {
    "title": "Tilecode",
    "controlTitle": "Tilecode 设置",
    "autoResolution": "自动分辨率",
    "resolution": "分辨率",
    "cellCount": "当前视图中有 {{count}} 个瓦片",
    "tooManyCells": "当前视图超过了 {{limit}} 个瓦片的上限。请放大地图或降低分辨率。",
    "fillColor": "填充颜色",
    "fillOpacity": "填充不透明度",
    "lineColor": "轮廓颜色",
    "lineWidth": "轮廓宽度",
    "showLabels": "显示瓦片 ID",
    "identifyHint": "点击地图以识别瓦片。",
    "selectedCell": "选中的瓦片",
    "noSelection": "未选中瓦片",
    "copyId": "复制 ID",
    "quadkey": "Quadkey",
    "parent": "父瓦片",
    "children": "子瓦片",
    "neighbors": "相邻瓦片",
    "center": "中心",
    "zoomToCell": "缩放至瓦片",
    "addAsLayer": "将网格添加为图层",
    "exportGeoJson": "导出 GeoJSON",
    "exportCsv": "导出 CSV",
    "includeNeighbors": "包含所选瓦片的相邻瓦片",
    "includeParent": "包含所选瓦片的父瓦片"
  },
  "netcdfSymbology": {
    "heading": "NetCDF 符号化",
    "colorRampLabel": "色彩映射",
    "reverse": "反转色彩映射",
    "colorMin": "颜色最小值",
    "colorMax": "颜色最大值",
    "resetRange": "重置为数据范围",
    "openCube": "3D 立方体"
  },
  "netcdfCube": {
    "heading": "3D 影像立方体",
    "close": "关闭",
    "settings": "设置",
    "setupTitle": "3D 影像立方体",
    "setupDescription": "构建立方体前请先选择要读取的内容。每个波段都是一次单独读取，因此范围和波段数量决定了耗时长短。",
    "extent": "范围",
    "extentView": "当前地图视图",
    "extentDraw": "在地图上绘制",
    "extentFull": "图层完整范围",
    "viewHint": "读取构建立方体时地图所显示的内容。",
    "fullHint": "读取整个格网。对于场景大小的立方体会很慢。",
    "drawBbox": "在地图上绘制",
    "drawing": "在地图上拖拽绘制矩形以设定立方体的范围",
    "drawHint": "在地图上拖拽绘制矩形以设定范围。",
    "drawnExtent": "西 {{west}}，南 {{south}}，东 {{east}}，北 {{north}}",
    "detail": "细节程度",
    "detailOption": "每边 {{size}} 个单元格",
    "bands": "波段",
    "allBands": "全部（{{count}}）",
    "rgbOverlay": "顶面叠加 RGB 影像",
    "rgbHint": "将三个波段合成为一幅彩色影像铺在顶面上，使立方体能被辨认为一个地方。",
    "red": "红",
    "green": "绿",
    "blue": "蓝",
    "planeEstimate": "读取 {{count}} 个波段",
    "create": "创建立方体",
    "colorRampLabel": "色彩映射",
    "reverse": "反转",
    "showRgb": "顶面 RGB",
    "rgbBands": "RGB 波段",
    "recomposing": "正在读取...",
    "zScale": "高度",
    "slice": "切片",
    "sliceAt": "切于 {{band}} {{units}}",
    "reading": "正在读取第 {{done}} / {{total}} 个波段...",
    "summary": "{{nx}} x {{ny}} 个单元格，沿 {{axis}} 共 {{nz}} 个波段",
    "errorNoCube": "该图层的源文件已不再打开，因此无法读取立方体。",
    "error": {
      "shapeMismatch": "该变量各波段的平面形状不一致，无法堆叠成立方体。",
      "rgbShapeMismatch": "所选的 RGB 波段与立方体的形状不匹配。",
      "noBands": "该变量没有可读取的波段。",
      "noReadWindow": "该立方体无法就地更新。请从设置中重新构建。"
    }
  },
  "netcdfProfile": {
    "heading": "光谱曲线",
    "clear": "清除",
    "chartAria": "沿波段轴采样的像素值",
    "popOut": "弹出",
    "dock": "停靠",
    "poppedOutHint": "图表已在地图上的窗口中打开。",
    "noValues": "这些像素没有可绘制的数值。",
    "exportPng": "PNG",
    "exportCsv": "CSV",
    "exportError": "无法导出该图表。"
  },
  "netcdfIdentify": {
    "noData": "无数据",
    "coordinates": "经度、纬度",
    "cell": "行、列"
  }
}
