Heim >Backend-Entwicklung >C++ >Wie kann ich einen Screenshot als Bitmap in meiner Anwendung erfassen und speichern?
Screenshots programmgesteuert als Bitmaps erfassen und speichern
Die Integration der Bildschirmaufnahmefunktion direkt in Ihre Anwendung bietet eine optimierte Alternative zur manuellen Screenshoterstellung. Dieser Artikel beschreibt eine Methode, um dies mit C# zu erreichen.
Verwendung von Graphics.CopyFromScreen()
Die Kernfunktion für die Bildschirmaufnahme ist Graphics.CopyFromScreen()
. Diese Methode kopiert effizient einen definierten Bildschirmbereich in ein Bitmap-Objekt. Die Implementierung ist wie folgt:
<code class="language-csharp">// Create a Bitmap matching the primary screen's dimensions. Bitmap bmpScreenshot = new Bitmap(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height, PixelFormat.Format32bppArgb); // Create a Graphics object from the Bitmap. Graphics gfxScreenshot = Graphics.FromImage(bmpScreenshot); // Capture the entire screen. gfxScreenshot.CopyFromScreen(Screen.PrimaryScreen.Bounds.X, Screen.PrimaryScreen.Bounds.Y, 0, 0, Screen.PrimaryScreen.Bounds.Size, CopyPixelOperation.SourceCopy); // Save the screenshot (e.g., as a PNG). bmpScreenshot.Save("Screenshot.png", ImageFormat.Png); </code>
Dieser Code erstellt zunächst eine Bitmap mit Abmessungen, die dem primären Bildschirm entsprechen. Aus dieser Bitmap wird dann ein Grafikobjekt erstellt. CopyFromScreen()
kopiert den Bildschirminhalt in die Bitmap. Abschließend wird die Bitmap in einer Datei gespeichert, hier im PNG-Format. Dieser Prozess ermöglicht die programmgesteuerte Bearbeitung des erfassten Bildes innerhalb Ihrer Anwendung.
Das obige ist der detaillierte Inhalt vonWie kann ich einen Screenshot als Bitmap in meiner Anwendung erfassen und speichern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!