Cách chuyển đổi GPX sang KMZ trong C#

Trong hướng dẫn từng bước này, chúng tôi sẽ chỉ cho bạn cách chuyển đổi GPX sang KMZ trong C#. Điều này sẽ đạt được bằng cách chuyển đổi định dạng GPX sang KML và sau đó chuyển đổi KML sang định dạng KMZ bằng mã C#.

Các bước để chuyển đổi GPX sang KMZ trong C#

  1. Cài đặt gói Aspose.GIS for .NETAspose.Zip for .NET từ NuGet.org
  2. Bao gồm không gian tên Aspose.GisAspose.Zip
  3. Đặt giấy phép cho cả hai API bằng phương pháp SetLicense
  4. Sử dụng VectorLayer class để chuyển đổi định dạng GPX sang loại tệp KML
  5. Tạo phiên bản của Archive class để tạo tệp Zip
  6. Thêm KML đầu ra và các tệp liên quan khác dưới dạng mục nhập Zip
  7. Lưu KML và các tệp khác dưới dạng một tệp Zip
  8. Đổi tên tệp cuối cùng thành KMZ (Định dạng nén KML)

Định dạng tệp KMZ là định dạng nén không chỉ chứa tệp bản đồ KML mà còn chứa các tệp liên quan như hình ảnh, âm thanh và các định dạng khác. Vì vậy, trước tiên chúng ta cần chuyển đổi GPX file to KML và sau đó chuyển đổi định dạng tệp bản đồ KML sang KMZ.

Mã để chuyển đổi GPX sang KMZ trong 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");
}
}
}

Trong đoạn mã này, sau khi chuyển đổi GPX sang định dạng KM, chúng tôi đang tạo một kho lưu trữ Zip của tệp KML cùng với một tệp hình ảnh. Đây chỉ là mục đích mẫu, bạn có thể thêm bất kỳ tệp nào có liên quan đến tệp KML có liên quan của mình vào gói KMZ.

 Tiếng Việt