Repolode
ianho7

ianho7/maptoposter-online

一款在浏览器中运行的工具,基于 OpenStreetMap 数据生成可下载的城市地图海报,无需安装。

Star
980
Fork
47
未关闭 Issue
1
最近提交
3个月前

这是什么?

MapPoster Online 允许你选择一座城市、挑选视觉主题,并将其街道地图导出为可直接打印的海报。它是 Python 命令行工具 maptoposter 的浏览器版本,无需安装,打开网页选好地点即可下载成品。

地图数据来自 OpenStreetMap,通过 Overpass API 和 Protomaps 获取;渲染引擎使用 Rust 编写,经 WebAssembly 编译并基于 tiny-skia 绘制。数据获取与渲染都在 Web Worker 中运行,页面不会因生成海报而卡顿,已获取的地图数据会缓存到 IndexedDB 中,便于再次生成。应用内置 20 种主题,支持逐项调整颜色,提供多种导出尺寸与 300 DPI 输出,并带有实时预览。

项目基于 React 19、TypeScript、Vite、Tailwind CSS v4 和 Bun 构建。自定义地点大头针功能通过用户自行申请的高德地图 Web 服务 API Key 进行地点搜索。

核心功能

  • 01完全在浏览器中运行,无需安装
  • 02基于 tiny-skia 的 Rust/WASM 渲染引擎
  • 03内置 20 种主题,颜色可逐项调整
  • 04支持 A4、正方形、手机壁纸及 16:9 等尺寸,输出 300 DPI
  • 05可通过高德搜索添加并渲染自定义地点大头针
  • 06IndexedDB 缓存地图数据,重复生成更快

适用场景

  • 为家乡或旅行目的地制作可打印的城市地图海报
  • 设计以城市街道为主题的装饰画或礼物
  • 快速生成手机或桌面用的地图壁纸
  • 在城市海报上标注个人关注的地点

快速上手

  1. 1

    使用 Bun 安装依赖

    bun install
  2. 2

    构建 Rust/WASM 渲染引擎(需要 Rust 和 wasm-pack)

    bun run build:wasm
  3. 3

    启动开发服务器,然后打开 http://localhost:5173

    bun run dev

使用前须知

  • 本地开发需要安装 Rust 和 wasm-pack 来构建 WASM 渲染引擎。
  • 自定义 POI 图钉功能需要你自己的高德地图 Web 服务 API 密钥。

收录于专题

标签

常见问题

maptoposter-online 是什么?
一款在浏览器中运行的工具,基于 OpenStreetMap 数据生成可下载的城市地图海报,无需安装。 MapPoster Online 允许你选择一座城市、挑选视觉主题,并将其街道地图导出为可直接打印的海报。它是 Python 命令行工具 maptoposter 的浏览器版本,无需安装,打开网页选好地点即可下载成品。
maptoposter-online 可以免费使用吗?用的什么许可证?
maptoposter-online 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
maptoposter-online 还在维护吗?
半年内有更新。maptoposter-online 最近一次提交是在 2026年8月3日。
maptoposter-online 适合用来做什么?
为家乡或旅行目的地制作可打印的城市地图海报 设计以城市街道为主题的装饰画或礼物 快速生成手机或桌面用的地图壁纸 在城市海报上标注个人关注的地点
maptoposter-online 怎么安装和运行?
使用 Bun 安装依赖: bun install 构建 Rust/WASM 渲染引擎(需要 Rust 和 wasm-pack): bun run build:wasm 启动开发服务器,然后打开 http://localhost:5173: bun run dev
在哪里获取 maptoposter-online?
源代码和安装说明在 GitHub 上:https://github.com/ianho7/maptoposter-online

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目