|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2006
Messaggi: 314
|
[C]Manipolazione di png
Ciao a tutti..
Dovrei realizzare un programma che prende in input una immagine png e conta i pixel di un certo colore. Non ho esperienza a riguardo e quindi mi rivolgo a voi. Io stavo pensando a questo Codice:
int main ()
{
FILE * pFile;
long lSize;
char * buffer;
size_t result;
pFile = fopen ( "img.png" , "rb" );
if (pFile==NULL) {fputs ("File error",stderr); exit (1);}
// obtain file size:
fseek (pFile , 0 , SEEK_END);
lSize = ftell (pFile);
rewind (pFile);
buffer = (char*) malloc (sizeof(char)*lSize);
if (buffer == NULL) {fputs ("Memory error",stderr); exit (2);}
result = fread (buffer,1,lSize,pFile);
if (result != lSize) {fputs ("Reading error",stderr); exit (3);}
fclose (pFile);
free (buffer);
return 0;
}
Come faccio ad avere la rappresentazione numerica dell'immagine per poter distinguere i colori? Devo per forza utilizzare librerie di terze parti?
__________________
Athlon64 x2 5600 - AsRock ALiveNF5eSata2+ - kingston 2GB ddr2 800 - GeForce 8800gts 320MB Ultima modifica di Rsk : 19-06-2010 alle 19:58. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Feb 2006
Messaggi: 1304
|
Beh puoi divertirti a implementare il parsing delle specifiche
ma vista la complessità del formato forse ti conviene buttare dentro FreeImage e non pensarci più |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Dec 2006
Messaggi: 314
|
ok grazie
__________________
Athlon64 x2 5600 - AsRock ALiveNF5eSata2+ - kingston 2GB ddr2 800 - GeForce 8800gts 320MB |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 17:24.



















