Рендеринг карты относится к созданию визуальных карт из геопространственных данных. Вы можете отображать карты из KML, GeoJSON, GeoTIFF, а также из Shapefile в различные форматы файлов. Вы можете отображать карты в различные форматы изображений, такие как PNG, SVG, JPG и т. д. В следующих разделах подробно рассматривается преобразование карт в изображения:
- Рендеринг карты из шейп-файла в изображения — установка C# API
- Рендеринг карты из шейп-файла в SVG программно с использованием C#
- Рендеринг карты из шейп-файла в PNG-изображение программно на C#
- Пользовательский рендеринг карты с расширенным стилем с использованием C#
- Рендеринг карты из формата GeoTIFF в SVG программно с использованием C#
Рендеринг карты из шейп-файла в изображения — установка C# API
Aspose.GIS for .NET API позволяет работать с различными географическими и геопространственными форматами файлов. Вы можете отображать карты из поддерживаемых форматов файлов в SVG, PNG и другие форматы файлов в соответствии с вашими требованиями. Настройте API, загрузив его из раздела Новые выпуски, или вы можете использовать следующую команду установки NuGet в консоли диспетчера пакетов.
PM> Install-Package Aspose.GIS
Рендеринг карты из шейп-файла в SVG программно с использованием C#
Вы можете визуализировать карту из шейп-файла в файл SVG, выполнив следующие действия:
- Создайте новый экземпляр класса Map.
- Создайте слой векторной карты и добавьте его на карту.
- Визуализировать карту в файл.
В приведенном ниже коде показано, как программно отобразить карту из шейп-файла в SVG с помощью C#;
// Создайте новый экземпляр класса Map.
using (var map = new Rendering.Map(800, 400))
{
// Создайте слой векторной карты и добавьте его на карту.
map.Add(VectorLayer.Open("land.shp", Drivers.Shapefile));
// Визуализировать карту в файл.
map.Render("land_out.svg", Renderers.Svg);
}
Рендеринг карты из шейп-файла в PNG-изображение программно на C#
Вы можете визуализировать карту из шейп-файла в форматы растровых изображений, такие как PNG, JPG, BMP и т. д. Ниже приведены шаги для рендеринга карты из шейп-файла в изображение PNG:
- Инициализируйте объект класса Map с размерами.
- Создайте и добавьте слой векторной карты.
- Преобразуйте карту в изображение PNG.
В следующем коде показан программный рендеринг карты из шейп-файла в изображение PNG с использованием C#:
// Инициализируйте объект класса Map с размерами.
using (var map = new Rendering.Map(800, 400))
{
// Создайте и добавьте слой векторной карты.
map.Add(VectorLayer.Open("land.shp", Drivers.Shapefile));
// Преобразуйте карту в изображение PNG.
map.Render("land_out.png", Renderers.Png);
}
Пользовательский рендеринг карты с расширенным стилем с использованием C#
Вы можете настроить внешний вид карты с помощью расширенных стилей объектов. Для рендеринга пользовательской карты выполните следующие шаги:
- Инициализировать объект класса Map.
- Инициализируйте SimpleFill для простого символизатора полигонов.
- Откройте слой из входного шейп-файла для чтения.
- Визуализировать карту в файл.
В приведенном ниже коде объясняется, как выполнить визуализацию пользовательской карты в расширенном стиле с помощью C#:
// Инициализировать объект класса Map.
using (var map = new Rendering.Map(800, 476))
{
// Инициализировать SimpleFill для простого символизатора полигонов.
var baseMapSymbolizer = new Rendering.Symbolizers.SimpleFill { FillColor = Color.Salmon, StrokeWidth = 0.75 };
// Откройте слой из входного шейп-файла для чтения.
map.Add(VectorLayer.Open("basemap.shp", Drivers.Shapefile), baseMapSymbolizer);
// Инициализировать новый экземпляр класса SimpleMarker.
var citiesSymbolizer = new Rendering.Symbolizers.SimpleMarker() { FillColor = Color.LightBlue };
citiesSymbolizer.FeatureBasedConfiguration = (feature, symbolizer) =>
{
var population = feature.GetValue<int>("population");
symbolizer.Size = 10 * population / 1000;
if (population < 2500)
{
symbolizer.FillColor = Color.GreenYellow;
}
};
// Добавьте VectorMapLayer на карту.
map.Add(VectorLayer.Open("points.geojson", Drivers.GeoJson), citiesSymbolizer);
// Рендеринг карты в файл.
map.Render("cities_out.svg", Renderers.Svg);
}
Рендеринг карты из формата GeoTIFF в SVG программно с использованием C#
Вы можете визуализировать карту из файла GeoTIFF в файл SVG, выполнив следующие действия:
- Создайте объект класса Map.
- Откройте слой для чтения с помощью драйвера для формата GeoTIFF или TIFF.
- Рендеринг карты в файл.
Фрагмент кода ниже демонстрирует, как программно визуализировать карту из формата GeoTIFF в SVG с помощью C#:
// Инициализировать объект класса Map.
using (var map = new Rendering.Map(500, 500))
{
// Откройте слой для чтения с помощью драйвера для формата GeoTIFF или TIFF.
var layer = GeoTiff.OpenLayer("raster_float32.tif");
// Преобразование в цвета определяется автоматически.
// Рассчитываются максимальное и минимальное значения и используется линейная интерполяция.
map.Add(layer);
// Рендеринг карты в файл.
map.Render("raster_float32_out.svg", Renderers.Svg);
}
Получить бесплатную лицензию API
Вы можете оценить API с Бесплатной временной лицензией для тестирования API без каких-либо ограничений.
Вывод
В этой статье вы узнали о рендеринге карты из шейп-файла или формата GeoTIFF в SVG или другие форматы растровых изображений, такие как PNG, JPG, TIFF и т. д. Вы можете изучить другие функции API, посетив Документацию. Пожалуйста, не стесняйтесь обращаться к нам через Бесплатный форум поддержки в случае возникновения каких-либо вопросов.