Dopo aver imparato come creare una immagine, oggi vedremo come salvarla in un file utilizzando il formato bitmap e quindi come poterla caricare per usi successivi.
Come salvare una immagine
L’istruzione per salvare una qualsiasi immagine è la funzione bsave.
La funzione restituisce il valore 0 (zero) se il salvataggio è andato a buon fine, altrimenti viene restituito un codice di errore.
Vediamo l’uso di questa istruzione con un semplice esempio:
screen 19, 32, 1
''dimensiona la variabile per gestire il
''valore restituito dalla funzione bsave
dim risultato as long
''dimensiona la variabile di tipo puntatore
''per l'indirizzo di memoria
dim immagine1 as any ptr
''crea l'immagine
immagine1 = imagecreate(200, 200, rgb(255,0,0))
if immagine1 = 0 then
print "Creazione dell'immagine non riuscita!"
sleep
else
''disegna un cerchio verde al centro
circle immagine1, (100, 100), 50, rgb(0,255,0)
''inserisce l'immagine all'interno
''della finestra grafica
put(150, 150), immagine1
end if
print "Premi un tasto per salvare l'immagine."
sleep
''salva l'immagine
risultato = bsave("immagine.bmp", immagine1)
if risultato <> 0 then
print "Salvataggio dell'immagine non riuscito!"
else
print "L'immagine e' stata correttamente salvata."
end if
sleep
Ora, se il salvataggio è riuscito, andiamo a rinominare il file della nostra immagine modificandolo poi con un qualsiasi programma di grafica prima di provare a caricarlo.
Come caricare una immagine
L’istruzione per caricare le immagini è bload.
Aggiungiamo ora questo blocco di codice in fondo al programma che abbiamo appena provato:
print "Premi un tasto per caricare l'immagine"
print "modificata in una nuova posizione."
sleep
risultato = bload("immagine2.bmp", immagine1)
if risultato <> 0 then
print "Caricamento dell'immagine non riuscito!"
sleep
else
print "L'immagine e' stata correttamente caricata."
''inserisce l'immagine all'interno
''della finestra grafica
put(300, 50), immagine1
print "Premi un tasto per uscire."
sleep
''distrugge l'immagine per liberare la memoria
imagedestroy immagine1
end if
Se tutto è andato a buon fine dovremmo essere riusciti a visualizzare, in una diversa posizione dello schermo, la nostra immagine modificata.
Bene. Anche per oggi possiamo ritenerci soddisfatti. Un altro piccolo passo è stato fatto nel percorso di apprendimento del FreeBASIC. 🙂

