Konverter KML til GeoJSON
Konvertering av Google KML-filer til GeoJSON forvandler hierarkiske XML-geodata til lette JavaScript Object Notation-filer for vektordata for moderne nettleserkart.
Format-sammenligning og tekniske spesifikasjoner
| Spesifikasjon | KML | GEOJSON |
|---|---|---|
| MIME-type | application/ | application/ |
| Type | geografisk XML-notasjon | geografisk vektor-JSON |
| Kompresjon | XML-tekst (KMZ når ZIP-komprimert) | ingen (JSON-tekst) |
| Standardsesifikasjon | OGC KML 2.3 | IETF RFC 7946 |
| Signatur med magiske byte | 3C 3F 78 6D 6C ... 3C 6B 6D 6C (<kml) | 7B 22 74 79 70 65 22 3A 20 22 ({"type": ") JSON header |
Oversikt og bruksområder for formatet
Geografiske data flyttes ofte mellom kartverktøy på skrivebordet og nettapplikasjoner. Google KML er standardformatet som brukes av Google Earth, og strukturerer punkter, linjer og polygoner i et XML-tre. Moderne nettlesere og kartbiblioteker som Mapbox og Leaflet foretrekker GeoJSON fordi det samsvarer med datastrukturene som brukes naturlig i JavaScript. Utviklere og GIS-analytikere konverterer KML til GeoJSON for å laste inn kartoverlegg raskt på nettsider uten behov for spesiell skrivebordsprogramvare. Nettapplikasjoner behandler JSON øyeblikkelig sammenlignet med å analysere store XML-dokumenter. Når brukere laster et nettbasert kart, mates en GeoJSON-fil direkte inn i vektorrenderingsmotorer. Denne konverteringen fjerner overhead med å oversette XML-tagger under kjøring. Det gjør at kart kan vise tusenvis av elementer knirkefritt samtidig som de opprettholder presise koordinatgeometrier.
Tekniske spesifikasjoner og kodekoversikt
Google KML bruker MIME-typen application/vnd.google-earth.kml+xml og baserer seg på XML-syntaks, eller en ZIP-beholder kjent som KMZ når den er komprimert. GeoJSON bruker MIME-typen application/geo+json og består av ukomprimert ren tekst strukturert som et JSON-objekt. KML-filer starter ofte med bytesignaturen til XML-erklæringen, mens KMZ-arkiver starter med ZIP-formatets lokale filhodet med bytene 50 4B 03 04. GeoJSON-filer starter med ASCII-tegnet '{' som representerer rot-JSON-objektet. Konverteringsprosessen analyserer XML-dokumenttreet, trekker ut koordinatlister og metadataelementer, og skriver dem om til RFC 7946-kompatible samlinger av JSON-objekter uten tap av koordinatpresisjon.
OS- og nettleserkompatibilitet
Begge formatene fungerer på tvers av de fleste moderne operativsystemer inkludert Windows, macOS, Linux, iOS og Android. GeoJSON fungerer direkte i de fleste moderne nettlesere som Chrome, Firefox, Safari og Edge fordi nettlesere tolker JSON direkte. Google KML krever spesiell skrivebordsprogramvare som Google Earth eller konverteringsverktøy som QGIS for å gjengis ordentlig, ettersom nettlesere ikke kan vise KML-filer direkte uten tredjepartsbiblioteker for tolkning.
Nyttig informasjon
Kontroller alltid at kilde-KML-en din bruker WGS 84 geografiske koordinater før du konverterer til GeoJSON for å unngå romlige forskyvningsfeil på nettkartene dine.
Ofte stilte spørsmål
Hvordan konverterer du Google KML til GeoJSON uten å tape kvalitet?
Konverteringen er matematisk tapsfri for koordinatdata. Begge formatene lagrer geografiske koordinater ved hjelp av det romlige referansesystemet WGS 84. Spesifikke stilregler i KML, slik som egendefinerte ikon-URL-er og komplekse polygonhøyder, har imidlertid kanskje ikke direkte ekvivalenter i standard GeoJSON og kan kreve manuell gjenskaping.
Hva er forskjellen mellom Google KML og GeoJSON?
Google KML er et XML-basert språk designet for jordlesere, med en hierarkisk nodestruktur som støtter rik styling, kameraviser og 3D-elementer. GeoJSON er et lettvektformat bygget på JSON, optimalisert for web-API-er og vektorgrafikk med en flat struktur som inneholder funksjonssamlinger, geometrier og enkle egenskaper.