[c++]wartość koloru rgb

0

Chciałbym poznać wartość koloru danego piksla w bmp 8 bit.
z wczytanie nie mam problemu, ale z odczytanie liczby tak.
załóżmy że w a jest wczytany bajt i chce ko jakoś prze konwertować na int. jak to zrobić?
bo próbowałem tak i nic, nawet samo a nie wypisuje.

char a;//tu jest wczytany bajt
int k;
k = static_cast<int>(a)l
//lub
k = int(a);
//nic nie daje. nawet nie wypisuje a
cout<<a<<endl;
0

Nie znam się na C++, ale, chyba musiż coś wpisać do 'A' (np. 'A' := 'jakiś tekst'). Nie wiem jak to jest w C++, ale spróbuj.

0

Jak masz ten bajt jako znak wczytany, a nie liczbe to odejmij od niego 48 i zapisz w zmiennej int, albo uzyj k = atoi(&a);

0
asd222222 napisał(a)

Chciałbym poznać wartość koloru danego piksla w bmp 8 bit.
z wczytanie nie mam problemu, ale z odczytanie liczby tak.
załóżmy że w a jest wczytany bajt i chce ko jakoś prze konwertować na int. jak to zrobić?
bo próbowałem tak i nic, nawet samo a nie wypisuje.

cout<< (unsigned)a <<endl;

w takich obrazach i tak są indeksy do palety, a nie kolory.

i nie używasz tu char, lecz masz tablicę unsigned char (uint8, byte) i czytasz tak:
int ic = tablica[n];

albo od razu:
kolor = paleta[tablica[x+y*w]];
w - szerokość obrazu ale zaokrąglona w górę do 4.

paleta w plikach bmp jest zaraz za nagłówkiem pliku.

1 użytkowników online, w tym zalogowanych: 0, gości: 1