Pagini recente » Istoria paginii utilizator/upb_codejunkies | Diferente pentru problema/radacina2 intre reviziile 5 si 4 | Atasamentele paginii prega_ioit2017_1 | Diferente pentru problema/mere intre reviziile 12 si 11 | Diferente pentru problema/captcha intre reviziile 20 si 19
Nu exista diferente intre titluri.
Diferente intre continut:
h2. Precizari
* O poza este un fisier binar, iar pentru a extrage continutul unui fisier binar acesta se va deschide cu optiunea “rb”
== code(cpp) |
FILE *f = fopen(“poza.bmp”, “rb”)
==
$FILE *f = fopen(“poza.bmp”, “rb”)$
* Citirea dintr-un fisier binar se face in mod similar cu citirea dintr-un fisier text. De exemplu, pentru a citi un int vom folosi
== code(cpp) |
fscanf(f, "%d", &v)
==
$fscanf(f, "%d", &v)$
* Pentru a citi un singur byte se recomanda folosirea tipului de date char.
* Un fisier in format bmp 24bit fara compresie este format dintr-un header avand **exact 14 bytes** si structura
== code(cpp) |
code(cpp)
typedef struct {
unsigned short int type; /* Magic identifier */
unsigned int size; /* File size in bytes */
unsigned short int reserved1, reserved2;
unsigned int offset; /* Offset to image data, bytes */
} HEADER;
==
code(cpp)
* Urmeaza o zona de informatii avand **exact 40 bytes** si structura
== code(cpp) |
typedef struct {
unsigned int size; /* Header size in bytes */
int width,height; /* Width and height of image */
unsigned int ncolours; /* Number of colours */
unsigned int importantcolours; /* Important colours */
} INFOHEADER;
==
* Apoi urmeaza imaginea sub forma de matrice de pixeli bgr, adica fiecare pixel este reprezentat printr-un triplet de valori, fiecare pe cate un byte, reprezentand nivelele de albastru, verde si rosu din care este compusa culoarea pixelului. Un pixel este perfect alb daca toate cele 3 nivele au valoarea maxima (#FF in hexa). Pentru imaginea continand codul captcha vor exista exact $16*64$ triplete bgr.
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.