Screenshots in Windows-Anwendungen mit Win32 erstellen
Das Erstellen eines Screenshots des aktiven Bildschirms ist eine häufige Anforderung bei der Entwicklung von Windows-Anwendungen. Die Win32-API stellt die notwendigen Funktionen bereit, um den Bildschirminhalt zu erfassen und als Bilddatei zu speichern.
Wie mache ich einen Screenshot in Win32?
Aufnehmen Um einen Screenshot in einer Win32-Anwendung zu erstellen, führen Sie die folgenden Schritte aus:
- Rufen Sie den Gerätekontext des Anzeigebildschirms mit ab GetDC(nullptr).
- Erstellen Sie einen kompatiblen Gerätekontext mit CreateCompatibleDC(hScreenDC) zum Zeichnen.
- Bestimmen Sie die Abmessungen des Bildschirms mit GetDeviceCaps(hScreenDC, HORZRES) und GetDeviceCaps(hScreenDC, VERTRES) .
- Erstellen Sie eine kompatible Bitmap zum Speichern der Screenshot-Daten CreateCompatibleBitmap(hScreenDC, width, height).
- Wählen Sie die erstellte Bitmap mit SelectObject(hMemoryDC, hBitmap) in den kompatiblen Gerätekontext aus.
- Kopieren Sie den Bildschirminhalt mit BitBlt(hMemoryDC, 0, 0, Breite, Höhe, hScreenDC, 0, 0, SRCCOPY).
- Wählen Sie die Bitmap aus dem kompatiblen Gerätekontext ab und stellen Sie die ursprüngliche Bitmap mit SelectObject(hMemoryDC, hOldBitmap) wieder her.
- Geben Sie die Ressourcen frei, indem Sie sowohl den kompatiblen Gerätekontext als auch das Bildschirmgerät löschen Kontext mithilfe von DeleteDC(hMemoryDC) und DeleteDC(hScreenDC).
Mit diesem Prozess können Sie erfassen den gesamten Bildschirm und speichert es als Bitmap-Bild. Die Bitmap kann dann in einer Datei gespeichert oder bei Bedarf in der Anwendung angezeigt werden.
Das obige ist der detaillierte Inhalt vonWie erstelle ich mit der Win32-API einen Screenshot des gesamten Bildschirms?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!