В этом пошаговом руководстве мы покажем вам, как конвертировать GPX в KMZ на C#. Это достигается путем преобразования GPX в формат KML, а затем преобразования KML в формат KMZ с использованием кода C#.
Шаги по преобразованию GPX в KMZ на C#
- Установите пакеты Aspose.GIS for .NET и Aspose.Zip for .NET с сайта NuGet.org.
- Включить пространства имен Aspose.Gis и Aspose.Zip
- Установите лицензию для обоих API, используя метод SetLicense.
- Используйте VectorLayer class для преобразования формата GPX в тип файла KML.
- Создайте экземпляр Archive class для создания Zip-файла.
- Добавьте выходные KML и другие связанные файлы в виде записей Zip.
- Сохраняйте KML и другие файлы в виде одного Zip-файла.
- Переименуйте окончательный файл в KMZ (формат KML Zipped).
Формат файла KMZ — это заархивированный формат, содержащий не только файл карты KML, но и связанные файлы, такие как изображения, аудио и другие форматы. Итак, сначала нам нужно преобразовать GPX file to KML, а затем преобразовать KML в формат файла карты KMZ.
Код для преобразования GPX в KMZ на C#
using System; | |
//Add reference to Aspose.GIS for .NET & Aspose.Zip for .NET APIs | |
//Use following namespaces to convert GPX file format to KMZ format | |
using Aspose.Gis; | |
using Aspose.Zip; | |
namespace ConvertGPXToKMZFileFormat | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
//Set Aspose license before converting GPX file to KMZ format | |
//using Aspose.GIS for .NET | |
Aspose.Gis.License AsposeGISLicense = new Aspose.Gis.License(); | |
AsposeGISLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
//Set Aspose license to use Aspose.Zip to zip KML file | |
Aspose.Zip.License AsposeZipLicense = new Aspose.Zip.License(); | |
AsposeZipLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
//Convert GPX file to KML File | |
VectorLayer.Convert("InputGPXFile.gpx", Drivers.Gpx, "OutputKMLFile.kml", Drivers.Kml); | |
//Create Archive class instance | |
Archive ZipArchive = new Archive(); | |
//Create entry for each file in the zip archive | |
ZipArchive.CreateEntry("OutputKMLFile.kml", "OutputKMLFile.kml"); | |
ZipArchive.CreateEntry("ImageRelatedToKMLFile.png", "ImageRelatedToKMLFile.png"); | |
//Save output Zip file | |
ZipArchive.Save("KMLandImageFilesCombined.zip"); | |
//Rename Zip file to KMZ | |
System.IO.File.Move("KMLandImageFilesCombined.zip", "FinalOutputKMZFile.kmz"); | |
} | |
} | |
} |
В этом фрагменте кода после преобразования GPX в формат KM мы создаем Zip-архив файла KML вместе с файлом изображения. Это просто для примера, вы можете добавить любые файлы, связанные с вашим файлом KML, в пакет KMZ.