![]() |
Screenshot von transparenten Objekten
Hallo!
Wie kann ich einen Screenshot erstellen, auf dem ebenfalls transparente Objekte/Fenster zu sehen sind? Ich habe schon sämtliche Codeschnippsel für Screenshots ausprobiert, die aber alle keine transparente Fenster draufbekommen... Als Lösung hab ich mir überlegt, einfach die Screenshotfunktion von Windows zu verwenden, denn die bekommt transparente Fenster drauf. Aber ich müsste direkt auf die Funktion zugreifen können, denn die Drucktaste habe ich schon als Hotkey verwendet. Ich wäre sehr dankbar für eine Lösung, danke schonmal im Voraus. Mit freundlichen Grüßen, False Pretense |
Re: Screenshot von transparenten Objekten
hast auch schon versucht direkt vom Desktop zu kopieren?
GetDC(0) liefert das Desktop-Handle also quasi die Umkehrung von dem ![]() |
Re: Screenshot von transparenten Objekten
Das Problem dürfte sein, dass die Fenster per Overlay angezeigt werden. Und da funktionieren die Standardquelltexte in der Tat nicht. Die Frage kommt auch nicht zum ersten Mal, das letzte Mal habe ich auf dieses Projekt verwiesen:
![]() Das kann das und ist Open Source, man könnte also einfach mal schauen wie das geht. |
Re: Screenshot von transparenten Objekten
Hallo
Hast du CAPTUREBLT in BitBlt angegeben? |
Re: Screenshot von transparenten Objekten
Hallo Leute!
Danke erstmal für eure Antworten. Ich hab mir das mit CAPTUREBLT mal genauer angeschaut und es funktioniert. Vielen Dank :) Für die, die ebenfalls eine Lösung darauf suchen:
Delphi-Quellcode:
SRCCOPY wird hier einfach durch "SRCCOPY or CAPTUREBLT" ersetzt.
const
CAPTUREBLT = $40000000; (*...*) BitBlt(bm.Canvas.Handle, 0, 0, Width, Height, Dc, x, y, (**)SRCCOPY or CAPTUREBLT(**)); Mit freundlichen Grüßen, False Pretense |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz