Referenz - BSAVE
Syntax: BSAVE(Dateiname, [Adresse], [,Größe][, pal ])
Typ: Funktion
Kategorie: Datei
BSAVE speichert einen Block binärer Daten in eine Datei.
'Dateiname ist der Name der Datei, in die die Daten geschrieben werden.
'Adresse' ist die Adresse, von der die zu schreibenden Daten stammen. Wenn 0 (null) angegeben wird, kopiert BSAVE die Daten von der aktuellen Bildschirmseite. Üblicherweise ist dieser Parameter ein Pointer auf einen mit IMAGECREATE oder ALLOCATE erstellten Speicherbereich oder ein Pointer auf ein Array.
'Größe' ist die Größe des Datenblocks in Bytes, der gespeichert werden soll. Wird dieser Parameter ausgelassen, speichert BSAVE das gesamte Array. Ist Adresse ein Pointer, so muss Größe angegeben werden, da sonst gar nichts gespeichert wird.
(erst ab FB 0.20.0)
'pal' die Adresse auf einen Speicherbereich der die Werte der Farbpalette enthält, oder 0 (Null) wenn die Standard-Farbpalette gespeichert werden soll.
Der Rückgabewert ist eine der FreeBASIC Fehlernummern. Wie bei allen Funktionen kann der Rückgabewert verworfen werden; BSAVE wird dann wie eine Anweisung eingesetzt.
BSAVE kann auch benutzt werden, um Daten von der aktuellen Bildschirmseite in eine Datei zu speichern, wenn 0 als Adresse angegeben wird.
Beispiel 1:
BSAVE "image.bsv", 0, 64000
Die selbe Funktion erfüllt:
SCREENLOCK
BSAVE "image.bsv", SCREENPTR, 64000
SCREENUNLOCK
Wenn Sie Daten vom Bildschirm speichern, werden diese im selben Format gespeichert, das auch der aktuelle Bildschirmmodus verwendet; siehe Interne Pixelformate für Details. Beachten Sie besonders, dass ein Pixel möglicherweise mehr als ein Byte benötigt. Dementsprechend müssen Sie den Parameter 'Größe' anpassen.
BSAVE wird oft dazu verwendet, um Bildschirmausschnitte zu speichern, die zuvor mit GET (Grafik) eingelesen wurden. Diese können dann später mit PUT (Grafik) wieder ausgegeben werden.
Seit Version 0.14b können mit BSAVE Pixeldaten auch im BMP-Format gespeichert werden; geben Sie dazu einfach einen Dateinamen mit Erweiterung '.bmp' an. In diesem Fall kann der Parameter 'Größe' ausgelassen werden, da die Größe direkt aus dem Bildpuffer entnommen wird.
Beispiel 2:
' Grafikmodus initialisieren
SCREENRES 320, 200, 32
' Schwarzer Text auf weißem Grund
COLOR RGB(0, 0, 0), RGB(255, 255, 255)
CLS
LOCATE 13, 15: PRINT "Hello world!"
' Gesamten Bildschirm als Bitmap speichern
BSAVE "hello.bmp", 0
Unterschiede zu QB:
- Daten, die mit der FreeBASIC-Version von BSAVE gespeichert wurden, sind NICHT kompatibel zu den Daten, die mit QBs BSAVE gespeichert wurden.
- Die binären Daten können auch im Bitmap-Format gespeichert werden.
- BSAVE kann als Funktion eingesetzt werden
Unterschiede zu früheren Versionen:
- Die Möglichkeit, im BMP-Format zu speichern, existiert erst seit v0.14
Siehe auch:
BLOAD,
GET (Grafik),
VARPTR
| Zusätzliche Informationen und Funktionen | ||||
|---|---|---|---|---|
|
||||




Versionen