في هذا البرنامج التعليمي خطوة بخطوة ، سنوضح لك كيفية تحويل 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
- تعيين ترخيص لكل من واجهات برمجة التطبيقات باستخدام طريقة SetLicense
- استخدم VectorLayer class لتحويل تنسيق GPX إلى نوع ملف KML
- قم بإنشاء مثيل لـ Archive class لإنشاء ملف مضغوط
- أضف KML الناتج والملفات الأخرى ذات الصلة كمدخلات مضغوطة
- احفظ KML والملفات الأخرى كملف Zip واحد
- إعادة تسمية الملف النهائي باسم KMZ (تنسيق KML مضغوط)
تنسيق ملف 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 ، نقوم بإنشاء أرشيف مضغوط لملف KML مع ملف صورة. هذا فقط لغرض العينة ، يمكنك إضافة أي ملفات مرتبطة بملف KML المعني في حزمة KMZ.