Kartendaten können in verschiedenen Formaten wie KML, GeoTiff, GeoJSON, Shapefile usw. verfügbar sein. Es kann Situationen geben, in denen Sie die Kartendaten als BMP Bilder rendern müssen. Dazu lernen Sie in diesem Artikel, wie Sie Kartendaten im BMP Format mit C# rendern.

C# API zum Rendern von Maps im BMP Format

Wir werden die API Aspose.GIS for .NET verwenden, um Karten im BMP Format zu rendern. Es ist eine API, die die Arbeit mit Geodaten unterstützt, die in verschiedenen Dateiformaten gespeichert sind. Es bietet auch die Möglichkeit, Karten zu rendern und geografische Daten ohne zusätzliche Software zu erstellen, zu lesen und zu konvertieren. Sie können die API entweder über NuGet installieren oder direkt aus dem Abschnitt Downloads herunterladen.

PM> Install-Package Aspose.GIS

Rendern Sie die Karte mit C# in das BMP Format

Im Folgenden sind die Schritte zum Rendern von Karten im BMP Format aufgeführt.

Der folgende Beispielcode zeigt, wie eine Karte mit C# in das BMP Format gerendert wird.

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

Rendern der Karte in eine bestimmte Projektion mit C#

Im Folgenden sind die Schritte zum Rendern einer Karte für eine bestimmte Projektion aufgeführt.

Der folgende Beispielcode zeigt, wie eine Karte mit C# in eine bestimmte Projektion gerendert wird.

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);
}

Marker mit benutzerdefiniertem Stil mit C# hinzufügen

Im Folgenden finden Sie die Schritte zum Hinzufügen einer Markierung mit benutzerdefiniertem Stil zu einer Karte.

  • Erstellen Sie eine Instanz der Klasse Map.
  • Erstellen Sie eine Instanz der Klasse SimpleMarker.
  • Stellen Sie die Eigenschaften des Objekts SimpleMarker entsprechend Ihren Anforderungen ein.
  • Erstellen Sie eine Vektorebene aus der Geojson Datei und fügen Sie sie zusammen mit den Markierungen zur Karte hinzu.
  • Speichern Sie die Karte mit der methode Map.Render(string outputPath, Renderer renderer) als BMP Bild.

Der folgende Beispielcode zeigt, wie Sie einer Karte mit C# eine Markierung im benutzerdefinierten Stil hinzufügen.

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);
}

Holen Sie sich eine kostenlose Lizenz

Um die API ohne Evaluierungseinschränkungen zu testen, können Sie eine kostenlose temporäre Lizenz anfordern.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie Kartendaten mit C# als BMP Bilder rendern. Darüber hinaus haben Sie gesehen, wie Sie die Kartenprojektionen festlegen und Markierungen mit benutzerdefiniertem Stil hinzufügen. Aspose.GIS for .NET ist eine robuste API, die eine Reihe zusätzlicher Funktionen für die Arbeit mit Kartendaten bietet. Sie können die API im Detail erkunden, indem Sie die offizielle Dokumentation besuchen. Bei Fragen können Sie uns gerne in unserem kostenlosen Support-Forum erreichen.

Siehe auch