跳到主要内容

GPX 转 KML 转换器

立即将您的 GPX 文件转换为 KML 格式。所有处理都在浏览器中完成,数据不会离开您的设备。

将您的 GPX 文件拖放到此处,或点击浏览文件

隐私优先

所有转换都完全在浏览器中完成,您的 GPS 数据不会离开设备。

您的文件已转换。Dawarich 可自动处理所有格式,支持从 Google、Strava、Garmin 等来源导入,无需手动转换。

自托管或云端,随时可取消。

开始免费试用

何时需要转换GPX 转 KML

GPX 是 GPS 设备、运动手表或记录应用生成的格式。Google Earth、Google My Maps 和大多数桌面 GIS 工具则需要 KML 作为输入。如果您想在地图应用中直观查看轨迹,而不只是保存文件,就需要将 GPX 转换为 KML。

来到这个页面的常见原因包括:想把 Strava 导出文件放进 Google Earth,想通过 Google My Maps 分享 Garmin 手表记录的骑行,想为 AllTrails 或 OsmAnd 的徒步 GPX 添加可视化注释,或想把旧 GPS 设备中的轨迹迁入长期地图存档。

两种格式都基于 XML,且定义明确,因此共同字段可以无损转换。真正需要关注的是哪些字段无法对应,下面会详细说明。

哪些数据会保留,哪些不会

GPX → KML 转换后,具体会保留哪些内容、舍弃哪些内容:

字段是否保留?说明
GPS 坐标(纬度/经度)✅ 是两种格式都采用 WGS-84 十进制度数,精度相同。
海拔✅ 是GPX 的 <ele> 对应 KML <coordinates> 中的第三个坐标值,两者均以米为单位。
时间戳✅ 是GPX 的 <time> 会转换为每个 KML 地标上的 <TimeStamp>,两者均使用 ISO-8601 UTC。
轨迹结构(轨迹 → 分段 → 轨迹点)✅ 是GPX 的 <trk>/<trkseg> 会呈现为采用 <LineString> 几何类型的 KML <Placemark>。
航点✅ 是GPX 的 <wpt> 会转换为采用 <Point> 几何类型的 KML <Placemark>,并保留航点名称。
路线✅ 是GPX 的 <rte> 会呈现为独立的 KML <LineString>,与轨迹分开。
轨迹/航点名称与描述✅ 是对应 KML 的 <name> 和 <description>。
心率、步频或踏频、功率(TrackPointExtension)⚠️ 否KML 没有运动数据命名空间。如果需要心率、步频或踏频、功率数据,请转换为 TCX,或保留 GPX。
GPX <extensions> 块(自定义数据)⚠️ 部分保留通用扩展会被舍弃。如果需要携带任意属性,请使用 GeoJSON。
样式(线条颜色、宽度、图标)➕ 应用默认样式GPX 不包含样式,此转换器会应用合理的默认 KML <Style>。您可以在 Google Earth Pro 中编辑。

支持读取转换后文件的应用

生成 .kml 文件后,可以用以下应用打开:

  • Google Earth(网页版与 Pro 版) — 在浏览器版中直接拖入 .kml,或在 Earth Pro 中选择“文件 → 导入”。3D 可视化效果最佳。
  • Google My Maps — 创建新地图,再“导入”KML,即可与任何人分享带注释的地图。
  • QGIS — 开源桌面 GIS。将文件添加为矢量图层,并结合其他地理数据进行深入分析。
  • Marble — 开源虚拟地球仪,跨平台使用,无需 Google 账户。
  • Locus Map(Android) — 导入 KML,用于离线导航和路线回放。
  • Caltopo — 野外地图工具。导入 KML,结合地形叠加层规划行程。
  • Dawarich — 您也可以直接将 KML 和其他数据一起导入 Dawarich 时间线。

转换示例

输入精简的 GPX,输出精简的 KML,直观展示字段如何映射:

输入(GPX)

<?xml version="1.0"?>
<gpx version="1.1" creator="Garmin">
  <trk>
    <name>Morning Run</name>
    <trkseg>
      <trkpt lat="52.5200" lon="13.4050">
        <ele>34</ele>
        <time>2026-04-27T07:14:00Z</time>
      </trkpt>
      <trkpt lat="52.5210" lon="13.4060">
        <ele>36</ele>
        <time>2026-04-27T07:14:30Z</time>
      </trkpt>
    </trkseg>
  </trk>
</gpx>

输出(KML)

<?xml version="1.0"?>
<kml xmlns="http://www.opengis.net/kml/2.2">
  <Document>
    <name>Morning Run</name>
    <Placemark>
      <name>Morning Run</name>
      <LineString>
        <coordinates>
          13.4050,52.5200,34
          13.4060,52.5210,36
        </coordinates>
      </LineString>
      <TimeSpan>
        <begin>2026-04-27T07:14:00Z</begin>
        <end>2026-04-27T07:14:30Z</end>
      </TimeSpan>
    </Placemark>
  </Document>
</kml>

GPX 与 KML 简要对比

GPX(GPS 交换格式)由 Topografix 于 2002 年专为 GPS 设备发布,包含轨迹、路线、航点及每个轨迹点的基本元数据。几乎所有 GPS 设备、运动手表和户外应用都能读写它。它是一种精简、用途明确的格式,表达轨迹基本只有一种方式。

KML(Keyhole 标记语言)由 Keyhole 创建,Google 收购这家公司后开发了 Google Earth。它的用途更广,支持几何图形、样式、时间动画、3D 模型、网络链接和叠加层。KML 是展示格式,GPX 是交换格式。

如果您想分享或可视化轨迹,接收软件需要 KML。如果想将轨迹传回其他 GPS 设备,或在运动软件中分析,请保留 GPX。

常见问题

此转换器会把我的 GPX 文件上传到服务器吗?
不会。转换完全通过 JavaScript 在浏览器中完成。文件不会离开您的设备,也不会对文件内容进行分析统计。您可以自行验证:Dawarich 是开源的,转换器代码位于同一个公开代码仓库中。
可以一次转换多个 GPX 文件吗?
此转换器一次处理一个文件。如果需要将多个 GPX 文件合并成一个 KML,请先使用 GPX 合并工具,再转换合并后的文件。
心率和步频或踏频数据会保留吗?
不会。KML 没有为运动传感器数据定义扩展。如果需要保留心率、步频或踏频、功率,请保留原始 GPX(大多数运动应用更适合使用它),或转换为专为运动活动设计的 TCX。
如何在 Google Earth 中打开转换后的 KML?
在网页版中,将 .kml 文件拖到 Earth 界面上。在桌面 Google Earth Pro 中,选择“文件 → 打开”并选择文件。轨迹会出现在左侧的“临时地点”树中,右键点击即可永久保存。
为什么轨迹在 Google Earth 中看起来是一条平坦的线?
默认情况下,KML LineStrings 会贴合地面。要查看实际海拔变化,请在 Google Earth Pro 中右键点击导入的轨迹,将高度模式设为“绝对”或“相对地面”。
有文件大小限制吗?
转换器在浏览器中运行,因此实际限制取决于浏览器内存。在现代笔记本电脑上,几百兆字节以内的文件通常都能正常处理。对于非常大的 GPX 导出文件(例如多年存档),请先使用 GPS 文件拆分工具。