C#でGPXをKMZに変換する方法

このステップバイステップのチュートリアルでは、C#でGPXをKMZに変換する方法を示します。これは、GPXKML形式に変換してから、C#コードを使用してKMLをKMZ形式に変換することで実現されます。

C#でGPXをKMZに変換する手順

  1. NuGet.orgからAspose.GIS for .NETおよびAspose.Zip for .NETパッケージをインストールします
  2. Aspose.GisおよびAspose.Zip名前空間を含める
  3. SetLicenseメソッドを使用して両方のAPIのライセンスを設定します
  4. VectorLayer classを使用して、GPX形式をKMLファイルタイプに変換します
  5. Archive classのインスタンスを作成してZipファイルを作成します
  6. 出力KMLおよびその他の関連ファイルをZipエントリとして追加します
  7. KMLやその他のファイルを単一のZipファイルとして保存する
  8. 最終ファイルの名前をKMZ(KML Zipped形式)に変更します

KMZファイル形式は、KMLマップファイルだけでなく、画像、音声、その他の形式などの関連ファイルを含むzip形式です。そのため、最初にGPX file to KMLを変換してから、KMLをKMZマップファイル形式に変換する必要があります。

C#でGPXをKMZに変換するコード

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形式に変換した後、画像ファイルとともにKMLファイルのZipアーカイブを作成しています。これは単なるサンプル目的であり、関連するKMLファイルに関連する任意のファイルをKMZパッケージに追加できます。

 日本語