En este tutorial paso a paso, le mostraremos cómo convertir GPX a KMZ en C#. Esto se logrará convirtiendo GPX al formato KML y luego convirtiendo KML al formato KMZ usando el código C#.
Pasos para convertir GPX a KMZ en C#
- Instale los paquetes Aspose.GIS for .NET y Aspose.Zip for .NET desde NuGet.org
- Incluir espacios de nombres Aspose.Gis y Aspose.Zip
- Establezca la licencia para ambas API utilizando el método SetLicense
- Use VectorLayer class para convertir el formato GPX al tipo de archivo KML
- Cree una instancia de Archive class para crear un archivo Zip
- Agregue KML de salida y otros archivos relacionados como entradas Zip
- Guarde KML y otros archivos como un solo archivo Zip
- Cambie el nombre del archivo final como KMZ (formato KML comprimido)
El formato de archivo KMZ es el formato comprimido que contiene no solo el archivo de mapa KML, sino también archivos relacionados como imágenes, audio y otros formatos. Entonces, primero debemos convertir el GPX file to KML y luego convertir el formato de archivo de mapa KML a KMZ.
Código para convertir GPX a KMZ en 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"); | |
} | |
} | |
} |
En este fragmento de código, después de convertir GPX a formato KM, estamos creando un archivo Zip del archivo KML junto con un archivo de imagen. Esto es solo para fines de muestra, puede agregar cualquier archivo relacionado con su archivo KML en cuestión en un paquete KMZ.