Talus 是一款专为越野跑爱好者和赛事总监设计的高颜值、全交互式越野跑路书与高程图生成工具。
你可以直接导入 GPX 路线文件,自定义添加补给站(CP点),动态编辑抵达时间与备注,并一键导出完美适配现代手机屏幕比例的高清路书图片,作为比赛期间的手机壁纸或打印使用。
Note
👤 开发者:本网页由 Laurent L 通过 Vibe Coding 协作开发。 🔒 100% 隐私安全:本工具为纯前端应用,所有 GPX 解析、计算与图片导出完全在你的浏览器本地进行,没有任何网络上传,绝对保障你的路线隐私。
- ☀️ 通用高对比度配色系统 (Universal Palette):精心设计的户外高对比度配色,既保证了烈日暴晒下的清晰可读,也兼顾了夜间户外暗光环境下的视觉舒适度。
- ⏱️ 抵达用时与区间用时自动计算:只需输入抵达每个 CP 点的总累计时间,系统将自动计算出相邻 CP 点之间的区间分段用时。
- 📍 瑞士峡谷风格垂直文字 (Rotated CP Names):CP 点名称贴着垂直轴线纵向显示,彻底避免了横向文字在密集检查点时的重叠遮挡,美观规整。
- 📊 三行式高拟真分段信息框:底部子赛段的距离、爬升(绿色
▲)和下降(红色▼)分三行清晰展现,直观易读。 - 🎭 多图标叠加组合 (Multi-Icons):每个检查点最多支持叠加 3 层功能图标(如水站
💧+ 热食🍽️+ 医疗🏥),拥有 12 种精美矢量图标。 - 📝 高度自由的版面微调:
- 支持在图表任意位置添加自定义标注(Associated Texts),支持旋转与对齐。
- 为比赛名称、CP点名称、海拔、预计用时、备注等每一个内容都配备了独立的字号大小调节。
- 垂直辅助线默认在“海拔曲线处断开”进行高级视觉呈现,美观规整。
- 📱 多比例壁纸级导出:支持默认自适应(无白边)、19.5:9横屏(完美适配 iPhone 17/16 及全面屏手机壁纸)、20:9横屏(完美适配小米、华为 Pura 及主流安卓全面屏手机),支持 1× / 2× / 3× 高清分辨率导出。
- 📥 一键导入/导出 JSON 配置:支持将所有打点和视觉微调数据保存为本地 JSON 文件,方便下次继续编辑,同时提供一键下载模板功能。
直接访问在线发布地址即可使用: 🔗 https://feelthesea.github.io/TalusTrailPlanner/
如果你想在本地计算机上运行或修改它,非常简单:
# 1. 克隆代码到本地
git clone https://github.com/feelthesea/TalusTrailPlanner.git
# 2. 进入项目目录
cd TalusTrailPlanner
# 3. 启动一个本地静态网页服务器(例如 Python 内置服务器)
python -m http.server 8080
# 4. 在浏览器中打开:http://localhost:8080- 导入路线:点击 “📂 上传 GPX” 按钮,选择你的越野跑路线 GPX 文件。系统会自动绘制出完美的高程剖面图。
- 编辑 CP 点表:
- 在中间的 CP 点列表中编辑每个补给站的名称、累计距离(km)和备注信息(备注输入框支持回车换行,在图表上也会换行显示)。
- 时间编辑:在 “抵达cp点总用时” 列中输入该站的累计总用时(格式为
H:MM,例如4:35)。系统会自动在图表对应的两个 CP 之间算出这一段的区间用时(如(3:20))。
- 视觉微调:
- 点击表格中的任意行,或者点击下方卡片上的选项卡,即可选中该 CP 点。
- 在下方面板中微调该 CP 点的三层图标配置、图标颜色、指示线粗细与颜色、以及图表内嵌自定义标注。
- 通过左侧的字号大小输入框,微调路书上每一个文字元素的字体大小,以达到完美的视觉平衡。
- 导出与分享:
- 在顶部的 “导出比例” 选择适合你手机屏幕的比例。
- 点击 “🖼️ 下载图片 ▾”,推荐选择 “2× 高清” 或 “3× 超高清”,导出的 PNG 图片即可保存发送。
- 别忘了点击 “📤 导出 JSON” 备份你的打点配置!
你可以点击网页上的 “📋 下载模板” 获取标准格式,也可以直接参考以下 JSON 格式:
{
"raceName": "赛事名称",
"fontSizeTitle": 18,
"fontSizeCPName": 12,
"fontSizeCPElev": 11,
"fontSizeCPTime": 11,
"fontSizeCPNotes": 10,
"fontSizeSegment": 11,
"fontSizeCumulDist": 12,
"checkpoints": [
{
"name": "起点名称",
"distance": 0.0,
"arrivalTime": "0:00",
"notes": "备注内容",
"useForIntermediateDistances": true,
"iconSize": 20,
"iconRotation": 0,
"icons": [
{ "symbol": "start", "color": "#059669", "iconColor": "White" },
{ "symbol": "", "color": "#4e4e4e", "iconColor": "White" },
{ "symbol": "", "color": "#4e4e4e", "iconColor": "White" }
],
"axisColor": "#059669",
"axisThickness": 2,
"axisBroken": false,
"textColor": "#0f172a",
"textSize": 10,
"textOrientation": "To the right",
"texts": {
"leftBottom": "", "leftMiddle": "", "leftTop": "",
"rightBottom": "", "rightMiddle": "", "rightTop": ""
}
}
]
}如果你在越野跑训练或赛事规划中使用了 Talus,欢迎向我们分享你的路书美图! 如果有任何关于功能改进的建议、BUG 反馈,欢迎提交 Issue 或发起 Pull Request。
祝你越野跑训练愉快,安全完赛!🏃♂️🏔️