In Bilddatei schreiben - Wie?
-
Hi,
ich möchte ein Programm schreiben, das als Ausgabe eine Bilddatei hat.
Dafür muss ich wissen, wie ich aus meinem Programm heraus eine Bilddatei erstellen und in sie schreiben, also bestimmte Pixel "einfärben" kann.
Leider liefern mir Google und Forensuche bisher keine Ergebnisse, deswegen wende ich mich an euch.
Danke für eure Hilfe
Sinthoras
-
Such dir ein Grafikformat aus:
http://de.wikipedia.org/wiki/Kategorie:Grafikformat
und schreibe in eine Datei.
-
Ok, nehmen wir an, ich wollte png-Dateien erstellen und beschreiben (ist eigentlich egal, welches Format, meine Anforderungen an das Bild sind sehr gering).
Wie erstelle ich ein png-Bild?
(Sollte zumindest unter Win XP lauffähig sein, ob's noch wo anders geht, ist erstmal egal. Also wie lautet der WinAPI-Befehl dafür?)Wie kann ich dann ein bestimmtes, einzelnes Pixel einfärben?
Danke.
-
PNG ist kein gutes Beispiel, da es noch Komprimierung enthält (gleiches gilt für die meisten anderen Formate, wie jpeg, jpeg2k, gif etc.).
PPM ist zB ein extrem einfaches Format.
bool write_ppm(const unsigned char* buf, unsigned width, unsigned height, const char* file_name) { FILE* fd = fopen(file_name, "wb"); if(fd) { fprintf(fd, "P6 %d %d 255 ", width, height); fwrite(buf, 1, width * height * 3, fd); fclose(fd); return true; } return false; }
folgende Funktion (aus dem AGG Tutorial) schreibt zB gewöhnliche 8bit RGB-Daten (aus buf) in eine ppm-Datei.
-
Dieser Thread wurde von Moderator/in rüdiger aus dem Forum Rund um die Programmierung in das Forum Spiele-/Grafikprogrammierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Vielen Dank.
Ich denke, ich mache es doch mit Qt (da hab ich inzwischen selbst was gefunden). Da bin ich freier bei den Formaten.
Trotzdem danke nochmal.