Sobre el proyecto
MapToPoster es una herramienta de línea de comandos que genera mapas minimalistas estilo póster de ciudades de todo el mundo. Dado un nombre de ciudad y país, geocodifica la ubicación, descarga datos de OpenStreetMap y renderiza un PNG de alta resolución apto para impresión o fondos de pantalla.
Cómo funciona: el script resuelve coordenadas mediante Nominatim, obtiene redes de calles y elementos a través de OSMnx, y luego dibuja una salida por capas con matplotlib: fondo, agua, parques, carreteras coloreadas y ponderadas según el tipo de vía OSM, degradados y etiquetas de texto. Los archivos de salida se guardan en un directorio posters/ con el nombre de la ciudad, el tema y la marca de tiempo.
Las opciones clave incluyen --city y --country (obligatorias), además de --theme, --distance (radio del mapa en metros, por defecto 18000), --width/--height en pulgadas (por defecto 12x16, máximo 20), --latitude/--longitude para sobrescribir el centro, --country-label, --list-themes y --all-themes para renderizar todos los temas a la vez. Una guía de resolución asigna objetivos comunes (publicación de Instagram, fondo de pantalla móvil/HD/4K, impresión A4) a valores en pulgadas a 300 DPI.
El soporte multilingüe permite mostrar nombres de ciudad y país en escrituras nativas mediante --display-city, --display-country y --font-family; las fuentes se descargan de Google Fonts y se almacenan en caché localmente. El renderizador detecta escrituras latinas frente a no latinas y ajusta el espaciado entre letras en consecuencia (letras latinas espaciadas, espaciado natural para japonés, árabe, coreano, tailandés y otros).
Se incluyen diecisiete temas en el directorio themes/, entre ellos noir, midnight_blue, blueprint, neon_cyberpunk, warm_beige, pastel_dream, japanese_ink, emerald, forest, ocean, terracotta, sunset, autumn, copper_patina, monochrome_blue, gradient_roads y contrast_zones. Los temas personalizados se añaden como archivos JSON que definen colores de fondo, texto, agua, parques y por clase de carretera.
La instalación admite uv (recomendado, con dependencias bloqueadas) o pip más un entorno virtual. El README también documenta la arquitectura interna, funciones clave, el orden z de renderizado, la asignación de jerarquía de carreteras OSM a vías, el posicionamiento tipográfico, patrones de extensión para nuevas capas de mapa o propiedades de tema, y consejos de rendimiento como almacenar coordenadas en caché y usar redes solo de conducción para renderizados más rápidos.
Comments
0 people shared their preference · Deer Point appears after 10 participants
Sign in to join the discussion.