So erstellen Sie eine jpg-Bild dynamisch im Speicher mit .NET?

Habe ich eine .NET (3.5 SP1) library (DLL), geschrieben in C#. Ich muss erweitern diese Bibliothek durch eine Klasse Methode die folgende Signatur haben:

public byte[] CreateGridImage(int maxXCells, int maxYCells,
    int cellXPosition, int cellYPosition)
{
    ...
}

Diese Methode soll Folgendes tun:

  • Input-Parameter maxXCells und maxYCells definieren Sie die Größe der Zellen-raster in X-und Y-Richtung. maxXCells und maxYCells ist die Anzahl der Zellen in jeder Richtung. Die einzelnen Zellen sind viereckig. (Es ist also eine asymmetrische Schachbrett.)
  • Input-Parameter cellXPosition und cellYPosition identifizieren, die eine spezielle Zelle innerhalb dieses raster und diese Zelle muss gefüllt werden mit einem Kreuz.
  • Keine ausgefallenen Grafiken notwendig sind, wirklich nur schwarz grid-Linien auf einem weißen hintergrund und ein X in einer der Zellen.
  • Die resultierende Grafik muss im jpg-format.
  • Erstellung dieser Grafik muss im Speicher stattfinden-und sollte nichts in einer Datei gespeichert und auf der Festplatte noch auf dem Bildschirm gezeichnet.
  • Die Methode gibt das generierte Bild als byte[]

Ich bin nicht sehr vertraut mit Grafik-Funktionen .NET so meine Fragen sind:

  • Ist dies überhaupt möglich mit .NET 3.5 SP1-ohne zusätzliche third-party-Bibliotheken (was ich gerne vermeiden möchte)?
  • Was sind die grundlegenden Schritte, die ich Folgen müssen, und was sind die wichtigen .NET-namespaces, Klassen und Methoden, die ich wissen müssen, um dieses Ziel zu erreichen (gerade Linien zeichnen und andere einfache grafische Elemente "im Speicher" und konvertieren Sie das Ergebnis in ein byte-array im jpg-format)?

Danke für Vorschläge im Voraus!

InformationsquelleAutor der Frage Slauma | 2011-03-28

Schreibe einen Kommentar