Ebben a lépésről lépésre bemutatott oktatóanyagban megmutatjuk, hogyan alakíthatja át a GPX-t KMZ-vé C# nyelven. Ez úgy érhető el, hogy a GPX fájlt KML formátumba, majd a KML-t KMZ formátumba konvertálja C# kóddal.
Lépések a GPX konvertálásához KMZ-vé C#-ban
- Telepítse a Aspose.GIS for .NET és Aspose.Zip for .NET csomagokat a NuGet.org webhelyről
- Tartalmazza a Aspose.Gis és a Aspose.Zip névtereket
- Állítsa be a licencet mindkét API-hoz a SetLicense metódussal
- A VectorLayer class segítségével konvertálhatja a GPX formátumot KML fájltípussá
- Hozzon létre egy példányt a(z) Archive class fájlból ZIP-fájl létrehozásához
- Adjon hozzá kimeneti KML-t és más kapcsolódó fájlokat Zip-bejegyzésként
- Mentse a KML-t és más fájlokat egyetlen ZIP-fájlként
- Nevezze át a végső fájlt KMZ-re (KML tömörített formátum)
A KMZ fájlformátum a tömörített formátum, amely nemcsak KML-térképfájlt, hanem kapcsolódó fájlokat is tartalmaz, például képeket, hangokat és egyéb formátumokat. Tehát először konvertálnunk kell a GPX file to KML fájlt, majd a KML-t KMZ térképfájlformátumba.
Kód a GPX-nek KMZ-vé konvertálásához C#-ban
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"); | |
} | |
} | |
} |
Ebben a kódrészletben a GPX KM formátumba konvertálása után a KML-fájl ZIP-archívumát hozzuk létre egy képfájllal együtt. Ez csak példaként szolgál, bármilyen fájlt hozzáadhat egy KMZ-csomaghoz, amely az érintett KML-fájlhoz kapcsolódik.