Screenshot mit PB machen und als Datei abspeichern?
Screenshot mit PB machen und als Datei abspeichern?
Hi,
ich hab hier n Problem: ich will mit PB einen Screenshot machen, hab aber keinen Schimmer, wie das geht. Gibts vll. ne Userlib, die mir ermöglicht, nen Screenshot zu machen und diesen als Bitmap, JPEG, PNG, TIFF, oder GIF graphik abzuspeichern? Bevorzugt JPEG.
Danke im Vorraus
Kyoko12
ich hab hier n Problem: ich will mit PB einen Screenshot machen, hab aber keinen Schimmer, wie das geht. Gibts vll. ne Userlib, die mir ermöglicht, nen Screenshot zu machen und diesen als Bitmap, JPEG, PNG, TIFF, oder GIF graphik abzuspeichern? Bevorzugt JPEG.
Danke im Vorraus
Kyoko12
Hallo, ich bin eine Sig...(ENDE DER DEMOVERSION, BITTE VOLLVERSION KAUFEN!)
PB 3.92
PB 3.92
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Im CodeArchiv hab ich min. 15 Treffer bei Screenshot. Hier im Forum hab ich nicht getestet.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Hi,
das ist recht einfach, es gibt einen Befehl dafür.
Aus der Hilfe:
Gruß
Udo
das ist recht einfach, es gibt einen Befehl dafür.
Aus der Hilfe:
Code: Alles auswählen
GrabSprite(#Sprite, x, y, Breite, Hoehe [, Modus])
Fotografiert ("grab") den Bildschirminhalt im Bereich von (x, y, Breite, Höhe) und erstellt daraus ein neues #Sprite. In der Kombination von Grabsprite und SaveSprite() ist es somit z.B. möglich, einen Screenshot eines Spiels zu erstellen.
Udo
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
>> Also, im Code Archiev find ich nur einen Eintrag
Mir zeigt der CodeArchiveViewer genau 10 an
zum Beispiel diesen hier:
Recherieren gehört auch zu den wichtigen Fähigkeiten eines Programmierers 
Mir zeigt der CodeArchiveViewer genau 10 an

zum Beispiel diesen hier:
Code: Alles auswählen
; www.purearea.net (Sourcecode collection by cnesm)
; Author:
; Date: 22. November 2003
Procedure MakeDesktopScreenshot(ImageNr,x,y,Width,Height)
hImage = CreateImage(ImageNr,Width,Height)
hdc = StartDrawing(ImageOutput())
DeskDC = GetDC_(GetDesktopWindow_())
BitBlt_(hdc,0,0,Width,Height,DeskDC,x,y,#SRCCOPY)
StopDrawing()
ReleaseDC_(GetDesktopWindow_(),DeskDC)
ProcedureReturn hImage
EndProcedure
MakeDesktopScreenshot(0, 0, 0, 1024, 768)
SaveImage(0, "C:\DesktopScreenshot.bmp")

PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

hm...komisch...mir zeigts echt nur einen an...
naja, egal.
Mit diesem Code hab ihc n Problem...die Prozedur gibt hImage zurück, das ist doch der Identifier des neuen Bildes oder?? Wie kann ich dieses Bild jetzt speichern???
sorry das ich so nervig bin, brauch das echt dringend ^^
mfg
kyoko12
naja, egal.
Mit diesem Code hab ihc n Problem...die Prozedur gibt hImage zurück, das ist doch der Identifier des neuen Bildes oder?? Wie kann ich dieses Bild jetzt speichern???
sorry das ich so nervig bin, brauch das echt dringend ^^
mfg
kyoko12
Hallo, ich bin eine Sig...(ENDE DER DEMOVERSION, BITTE VOLLVERSION KAUFEN!)
PB 3.92
PB 3.92
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Code: Alles auswählen
hdc = StartDrawing(ImageOutput(0))
Du übergibst doch die ImageNr., erster parameter. Die Rückgabe kannste
ignorieren, bzw. nur zum testen ob <> 0, also Erfolg
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

hää??
kapier ich immer noch nicht...ImageOutput(0)?? Bei mir steht in der hilfe, das ImageOutput() gar keine Parameter hat?
Und wenn mir der Code den Screen dann in ein Image zeichnet, wie speichere ich das dann zB als JPEG-Datei ab??
danke für eure hilfe
mfg
kyoko12
ah, sorry, hatte übersehen dass die lösung ja schon im code oben steht
diesen Post einfach ignorieren

kapier ich immer noch nicht...ImageOutput(0)?? Bei mir steht in der hilfe, das ImageOutput() gar keine Parameter hat?
Und wenn mir der Code den Screen dann in ein Image zeichnet, wie speichere ich das dann zB als JPEG-Datei ab??
danke für eure hilfe
mfg
kyoko12
ah, sorry, hatte übersehen dass die lösung ja schon im code oben steht
diesen Post einfach ignorieren
Hallo, ich bin eine Sig...(ENDE DER DEMOVERSION, BITTE VOLLVERSION KAUFEN!)
PB 3.92
PB 3.92
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
>> kapier ich immer noch nicht...ImageOutput(0)??
Dann schreib mal bitte Deine PB-Version in die Signatur, ansonsten gehe ich
von der aktuellen Version aus, dort ist die 0 erforderlich!
Dann schreib mal bitte Deine PB-Version in die Signatur, ansonsten gehe ich
von der aktuellen Version aus, dort ist die 0 erforderlich!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
