Newsgroup: it.comp.lang.c
Titolo: HEX to BMP

Ciao.
Ho un problema che forse molti di voi sapranno aiutarmi a risolvere.
Ho un applet Java che mi restituisce un immagine GIF e un immagine BMP,
ma codificate in esadecimale. Qualcuno saprebbe dirmi come fare a
convertire l' immagine in modo da metterla in un file GIF/BMP e poterla
vedere con un qualsiasi programma di visualizzazione ?
Grazie, Leonardo Bucarelli
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG



 convertire l' immagine in modo da metterla in un file GIF/BMP e
Puoi prendere i valori hex due char alla volta e tradurli con sscanf es:
char valore[3];
char Byte[2];
strcpy(valore,"47");
sscanf(valore,"%X",&Byte)
putc(Byte,Handle-del-file-di-output);
oppure, senza la sscanf, ti fai uno scan su un array "0123456789ABCDEF",
la posizione corrisponde al valore decimale, poi componi le 2 cifre
esadecimali
((primo_valore_dec << 4)|secondo_valore_dec)
unsigned int hex2dec(char *valore)
{
 char hex[]="0123456789ABCDEF";
 unsigned int retval=0;
 while(hex[retval]&&(*valore++!=hex[retval]))retval++;
 return retval;
}
int main(void)
{
 char valore[3];
 unsigned int Byte;
 strcpy(valore,"47");
 Byte=(hex2dec(valore[0])<<4)|hex2dec(valore[1]);
 /*...etc..*/
 return 0;
}
non ho testato il codice ma dovrebbe andare.
-- 
iAN CooG - ANTIFAN #1 di Simone Crisari
Judgement day the second coming arrives
Before you see the light, you must die!
(South of heaven) (Slayer Gig count: 5)

 unsigned int hex2dec(char *valore)
ecco cosa succede a scivere di getto ^^;
unsigned int hex2dec(char valore)
{
 char hex[]="0123456789ABCDEF";
 unsigned int retval=0;
 while(hex[retval]&&(valore!=hex[retval]))retval++;
 return retval;
}
cosi' va gia' meglio 8P


 unsigned int hex2dec(char *valore)
ecco cosa succede a scrivere di getto ^^;
unsigned int hex2dec(char valore)
{
 char hex[]="0123456789ABCDEF";
 unsigned int retval=0;
 while(hex[retval]&&(valore!=hex[retval]))retval++;
 return retval;
}
cosi' va gia' meglio 8P
-- 


 vedere con un qualsiasi programma di visualizzazione ?
Che vuol dire "codificate in esadecimale"?

 Che vuol dire "codificate in esadecimale"?
invece del carattere l'equivalente numerico esadecimale
ad esempio
ESEMPIO   45 53 45 4D 50 49 4F

 ESEMPIO   45 53 45 4D 50 49 4F
"esadecimale" "ottale" "decimale" "binario" a casa mia sono 
rappresentazioni, non sono certo diverse codifiche dei caratteri...

 rappresentazioni, non sono certo diverse codifiche dei caratteri...
Guarda, c'e' un capello nel tuo uovo!! ،_،


 Guarda, c'e' un capello nel tuo uovo!! Ź_Ź
ehm... pelo nell'uovo o meno, non capisco veramente dov'č il problema.
Un dato digitale non č esadecimale, ne ottale, ne decimale... č e basta. 
Poi lo rappresenti come ti pare. Non credi?

 rappresentazioni, non sono certo diverse codifiche dei caratteri...
ed io che pensavo che non avevi capito :-)

 ehm... pelo nell'uovo o meno, non capisco veramente dov'è il problema.
Neanche io: si capiva benissimo a cosa si riferisse.
IMO non e' nemmeno tanto sbagliato a dire "immagini codificate in Hex",
se diceva per es. "codificate in UUencode" non si capiva lo stesso?
Ha usato "codifica" al posto di "rappresentazione", e bisogna farne una
questione?
Spesso capita di avere a che fare con clienti che si spiegano a gesti e
bisogna fare un programma in base alle loro indicazioni ^^;
Se ci si fermasse per una terminologia inappropriata si farebbe ben
poco.


 poco.
Non lo metto in dubbio. Ma se il cliente si spiega male al punto che non 
capisci, vorrai cercare di capire facendogli spiegare le cose con altre 
parole, oppure lasci perdere?

 codificata in esadecimale" non mi dice proprio nulla...
a me sembra chiarissimo, vabbe' ^_^;
