Конвертор от KML към GeoJSON

Конвертирането на Google KML файлове в GeoJSON преобразува йерархични XML географски данни в компактни векторни обекти във формат JavaScript Object Notation за съвременни уеб карти.

Изберете или пуснете файлове тук

Поверително - файловете никога не напускат устройството ви

или поставете Ctrl+V

Докато чакаш файловете си, можеш да играеш Code Rain

Гаранция за поверителност с нулево мрежово предаване: 0 байта са качени на външни сървъри. Цялата обработка се извършва локално в пясъчниците на вашия браузър.

Сравнение на формати и технически спецификации

СпецификацияKMLGEOJSON
MIME типapplication/vnd.google-earth.kml+xmlapplication/geo+json
Типгеографска нотация в XMLгеографски векторни данни в JSON
КомпресияXML текст (KMZ при ZIP компресия)няма (JSON текст)
Стандартна спецификацияOGC KML 2.3IETF RFC 7946
Заглавни байтове (Magic Bytes)3C 3F 78 6D 6C ... 3C 6B 6D 6C (<kml)7B 22 74 79 70 65 22 3A 20 22 ({"type": ") JSON header

Преглед на формата и приложения

Географските данни често се прехвърлят между настолни инструменти за картографиране и уеб приложения. Google KML е стандартният формат, използван от Google Earth, който структурира точки, линии и полигони в дървовидни XML структури. Съвременните уеб браузъри и библиотеки за карти като Mapbox и Leaflet предпочитат GeoJSON, защото той съответства на структурите от данни, използвани нативно от JavaScript. Разработчиците и ГИС анализаторите конвертират KML към GeoJSON, за да зареждат бързо картни овърлеи на уеб страници без нужда от специализиран софтуер. Уеб приложенията обработват JSON незабавно в сравнение с анализирането на големи XML документи. Когато потребителите заредят уеб карта, GeoJSON файлът се подава директно към двигателите за векторно рендиране. Това преобразуване елиминира натоварването от превеждането на XML тагове по време на изпълнение. То позволява на картите да показват хиляди елементи плавно, като същевременно поддържат прецизна координатна геометрия.

Технически спецификации и анализ на кодеците

Google KML използва MIME типа application/vnd.google-earth.kml+xml и разчита на XML текстов синтаксис или ZIP контейнер, известен като KMZ при компресиране. GeoJSON използва MIME типа application/geo+json и се състои от некомпресиран обикновен текст, структуриран като JSON обект. KML файловете често започват със стандартни байтове за XML декларация, докато KMZ архивите започват с байтовете на локалния файлов хедер на ZIP 50 4B 03 04. GeoJSON файловете започват с ASCII знака '{', представляващ корена на JSON обекта. Процесът на конвертиране анализира дървовидния XML документ, извлича координатни масиви и метаданни и ги записва отново в съвместими с RFC 7946 JSON колекции от обекти, без да губи координатна прецизност.

Съвместимост с операционни системи и браузъри

И двата формата работят на всички съвременни операционни системи, включително Windows, macOS, Linux, iOS и Android. GeoJSON работи нативно във всички съвременни уеб браузъри като Chrome, Firefox, Safari и Edge, тъй като браузърите анализират JSON нативно. Google KML изисква специализиран настолен софтуер като Google Earth или инструменти за превод като QGIS за правилно визуализиране, тъй като уеб браузърите не могат нативно да показват KML файлове без библиотеки за анализ от трети страни. Поддръжката зависи и от приложението, устройството, операционната система и версията ѝ.

Полезна информация

Винаги проверявайте дали вашият изходен KML използва географски координати WGS 84 преди конвертиране към GeoJSON, за да предотвратите грешки поради пространствено отместване на вашите уеб карти.

Често задавани въпроси

Как се конвертира Google KML в GeoJSON без загуба на качество?

Конвертирането е без математическа загуба на точност при преобразуването на координатни данни. И двата формата съхраняват географски координати, използвайки пространствената референтна система WGS 84. Въпреки това, специфичните правила за стилизиране в KML, като персонализирани URL адреси на икони и сложни височини на екструдиране на полигони, може да нямат директни еквиваленти в стандартния GeoJSON и може да изискват ръчно пресъздаване.

Каква е разликата между Google KML и GeoJSON?

Google KML е базиран на XML език, предназначен за браузъри за виртуални глобуси, включващ йерархична структура от възли, която поддържа богати стилове, изгледи на камерата и 3D елементи. GeoJSON е олекотен формат, изграден върху JSON, оптимизиран за уеб API и векторна графика с плоска структура, съдържаща колекции от обекти, геометрии и прости свойства.