Wie bekomme ich die Bitmap / das Bild von einem Graphics-Objekt in C #?

8

Ich möchte wissen, wie der Zwischenzustand des Puffers aussieht, in dem das Graphics-Objekt einige Objekte zeichnet. Wie erhalte ich die Bitmap oder das Bild, auf dem es gezeichnet wird?

    
dattebayo 15.03.2011, 06:48
quelle

5 Antworten

7

Ich bin mir nicht sicher, ob ich verstehe, wonach Sie fragen, da Ihre Frage sehr unklar ist.

Wenn Sie wissen möchten, wie Sie den Inhalt eines Graphics -Objekts in einer Bitmap speichern, lautet die Antwort, dass es dafür keinen direkten Ansatz gibt. Das Zeichnen auf einem Graphics -Objekt ist eine unidirektionale Operation.

Die bessere Option besteht darin, ein neues Objekt Bitmap zu erstellen, ein Objekt Graphics für diese Bitmap zu erhalten und direkt darauf zu zeichnen. Der folgende Code ist ein Beispiel dafür, wie Sie das tun könnten:

%Vor%     
Cody Gray 15.03.2011 06:58
quelle
3

Dieser Code funktioniert für mich, wo ich image & gt; & gt; Bitmap & gt; & gt; Byte & gt; & gt; Base64 String.

%Vor%     
Pranay Rana 15.03.2011 07:38
quelle
2

Nicht 100% sicher, was Sie hier wollen, aber wenn Sie die Grafikklasse zum Zeichnen und dann zum Speichern in einer Datei verwenden möchten, müssen Sie das Graphics-Objekt aus einer Bitmap-Datei beziehen und die Bitmap anschließend speichern erledigt. Sie können das so machen:

%Vor%     
Øyvind Bråthen 15.03.2011 06:57
quelle
0

Sie können seine hdc, die ein Zeiger auf den Oberflächenpuffer ist, und schließlich seinen Inhalt auf eine andere hdc mit Bitblt-Funktion kopieren. Auf diese Weise können Sie eine Kopie der Zeichenoberfläche auf einer Bitmap erstellen.

%Vor%     
user1830791 27.01.2018 10:10
quelle
-1

Haben Sie sich diesen MSDN-Artikel angesehen? Es beschreibt die Bitmap-Klasse, bei der es sich um ein Objekt handelt, das für die Arbeit mit Bildern verwendet wird, die durch Pixeldaten definiert sind. System.Drawing.Image bietet zusätzliche Funktionalität für es. HTH

    
Ke Sun 15.03.2011 06:54
quelle