Дані карти можуть бути доступні в різних форматах, як-от KML, GeoTiff, GeoJSON, Shapefile тощо. Можуть виникнути ситуації, коли вам потрібно відобразити дані карти як зображення BMP. Для цього ця стаття навчить вас відтворювати дані карти у форматі BMP за допомогою C#.

C# API для відтворення карти у форматі BMP

Ми будемо використовувати Aspose.GIS for .NET API для відтворення карт у форматі BMP. Це API, який підтримує роботу з геопросторовими даними, що зберігаються в різних форматах файлів. Він також надає можливість відтворювати карти та створювати, читати та конвертувати географічні дані без додаткового програмного забезпечення. Ви можете встановити API через NuGet або завантажити його безпосередньо з розділу Завантаження.

PM> Install-Package Aspose.GIS

Відтворення карти у форматі BMP за допомогою C#

Нижче наведено кроки для відтворення карт у форматі BMP.

  • Створіть екземпляр класу Map.
  • Створіть векторний шар із шейп-файлу та додайте його до карти.
  • Відтворіть карту як BMP за допомогою методу Map.Render(string outputPath, Renderer renderer).

У наведеному нижче прикладі коду показано, як відтворити карту у форматі BMP за допомогою C#.

using (var map = new Map(800, 400))
{
    map.Add(VectorLayer.Open(dataDir + "land.shp", Drivers.Shapefile));
    map.Render(dataDir + "land_out.bmp", Renderers.Bmp);
}

Візуалізація карти для конкретної проекції за допомогою C#

Нижче наведено кроки для візуалізації карти за певною проекцією.

  • Створіть екземпляр класу Map.
  • Створіть векторний шар із шейп-файлу та додайте його до карти.
  • Встановіть систему просторової прив’язки карти за допомогою властивості Map.SpatialReferenceSystem.
  • Збережіть карту як зображення BMP за допомогою методу Map.Render(string outputPath, Renderer renderer).

Наведений нижче зразок коду показує, як відобразити карту певної проекції за допомогою C#.

using (var map = new Map(800, 400))
{
    map.Add(VectorLayer.Open(dataDir + "land.shp", Drivers.Shapefile));
    map.SpatialReferenceSystem = SpatialReferenceSystem.CreateFromEpsg(54024); // World Bonne
    map.Render(dataDir + "land_out2.bmp", Renderers.Bmp);
}

Додайте маркер із власним стилем за допомогою C#

Нижче наведено кроки, щоб додати маркер із власним стилем до карти.

  • Створіть екземпляр класу Map.
  • Створіть екземпляр класу SimpleMarker.
  • Встановіть властивості об’єкта SimpleMarker відповідно до ваших вимог.
  • Створіть векторний шар із файлу geojson і додайте його на карту разом із маркерами.
  • Збережіть карту як зображення BMP за допомогою методу Map.Render(string outputPath, Renderer renderer).

У наведеному нижче прикладі коду показано, як додати маркер спеціального стилю до карти за допомогою C#.

using (var map = new Map(500, 200))
{
    var symbol = new SimpleMarker() { Size = 7, StrokeWidth = 1, FillColor = Color.Red };

    map.Add(VectorLayer.Open(dataDir + "points.geojson", Drivers.GeoJson), symbol);
    map.Padding = 20;
    map.Render(dataDir + "points_out2.bmp", Renderers.Bmp);
}

Отримайте безкоштовну ліцензію

Щоб спробувати API без оціночних обмежень, ви можете подати запит на безкоштовну тимчасову ліцензію.

Висновок

У цій статті ви дізналися, як відтворювати дані карти як зображення BMP за допомогою C#. Крім того, ви бачили, як налаштувати проекції карти та додати маркери з власним стилем. Aspose.GIS for .NET — це надійний API, який надає низку додаткових функцій для роботи з картографічними даними. Ви можете детально вивчити API, відвідавши офіційну документацію. У разі будь-яких запитань зв’яжіться з нами на нашому безкоштовному форумі підтримки.

Дивись також