Ho capito poco di quel file che hai postato.
C'è molto codice.
Nessuno ha una spiegazione come questa che segue?
La stessa cosa per i files .wav sarebbe l'ideale.
codice:
----==[ Compressione delle bitmap a 256 colori ]==----
Avete visto quanto son grosse le bitmap? Per ogni pixel usano
tre bytes: uno per definire il rosso, uno per il verde ed uno
per il blu. Il valore minimo è 0 ed il massimo è 255. La com-
pressione di cui vi parlerò consente di guadagnare i 2/3 del-
la dimensione delle immagini senza perdere alcun dettaglio
(come invece fanno le gif e le jpg)!
1. Quando funziona e come
L'algoritmo, particolarmente semplice, funziona con tutte le
immagini con massimo 256 colori (moltissimi banners su inter-
net hanno pochi colori per occupare meno spazio). In pratica
le bitmap hanno i tre bytes per ciascun pixel che indicano i
tre colori (rosso, verde, blu). Noi creiamo un header all'i-
nizio del campo dati con i colori usati nell'immagine ed af-
fidiamo a ciascuno di loro un codice ascii (per questo posso-
no essere al massimo 256). Nel definire i valori ovviamente
dovremo definire i livelli di rosso, verde e blu. Successiva-
mente definiremo l'altezza dell'immagine e la larghezza e poi
indicheremo il colore di ogni singolo pixel semplicemente in-
dicando il carattere ascii corrispondente al colore.
Tale algoritmo consente di lasciare immutati i colori e le
immagini; ciò invece non accade con il formato gif e jpeg che
per comprimere le immagini sacrifica parte della loro quali-
tà.
Vi illustro ora lo schema di funzionamento di un file:
/----\/-----\/---\/-----\/----\
|BAMP|| SC ||ALT||LARGH||DATI|
\----/\-----/\---/\-----/\----/
BAMP -> Header del file (BAMP = BiGA Bitmap)
SC -> Spazio riservato alla definizione dei colori
ALT -> Altezza dell'immagine
LARGH -> Larghezza dell'immagine
DATI -> Pixels dell'immagine
Una volta completata una riga, si continua con la successiva
senza aggiungere alcun byte: basta controllare che la lar-
ghezza massima dell'immagine è stata raggiunta per continuare
alla riga successiva.
Per eventuali chiarimenti scrivetemi pure in mail e chiarirò
i vostri dubbi (parlando così sembro wanna marchi ihihih :)
Ciauzz a tutti!
--
BiGAlex
E-Mail: totalmeltdown@libero.it
SiTE: http://www.forum-informatico.it
Una cosa simile mi sarebbe molto utile.
Grazie $$$!