PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C++ BMP laden


TheFallenAngel
2005-08-02, 14:09:47
hi!

Ich schreibe gerade ein c++ Programm in dem ich ein grayscale BMP auf Pixelebene barbeiten möchte. Dazu sollten die einzelnen Pixel in ein 2-dim Array geladen werden und nach der Bearbeitung das Bild wieder gespeichert werden.

Weiß jemand wo entspechenden Code finde der dieses bewerkstellingt bzw. wo ich dazu infos finde?

thx
cya

Trap
2005-08-02, 14:26:18
http://cimg.sourceforge.net/ sieht gut aus.

BMP ist allerdings recht einfach aufgebaut, so dass man es auch von Hand programmieren könnte. Beschreibung gibt es hier: http://www.wotsit.org/search.asp?s=graphics

Nur einige Pixel ändern und zurückschreiben ist kaum mehr als fstream x; x.seekg(...); x.read(...); /*zeug ändern*/ x.seekp(...); x.write(...);

Abe Ghiran
2005-08-02, 14:35:32
Wenn du das selber programmierst, denk daran daß bei bmp jede Zeile des Bildes ein vielfaches von 4 Bytes lang sein muß. Passt das nicht, muß man beim speichern die Zeile mit Nullen auffüllen, bzw. beim laden die Nullen überspringen.
Das überliest man in den Dokus gerne mal und hat dann ganz lustige Effekte.

Grüße, Jan

TheFallenAngel
2005-08-03, 10:12:17
hi!

danke für eure hilfe, ich werd mal versuchen das ding selbst zu coden...

cya