Entwickler-Ecke

Multimedia / Grafik - Bildgröße von Bilddateien


Tpercon - Di 16.07.02 11:30
Titel: Bildgröße von Bilddateien
Gibt es irgend ne Möglichkeit die Bildgröße (Breite & Höhe) von Bilddateien (.ico,.gif,.jpg,.jpeg,.png) ohne eine zusätzliche Komponente herauszufinden?

Gruß


Pit - Di 16.07.02 14:44
Titel: Re: Bildgröße von Bilddateien


Tpercon - Di 16.07.02 15:00

Ich hatte mir vorher schonmal die Seite angeschaut, aber irgendwie nicht wirklich was passendes dazu gefunden. :(


Pit - Di 16.07.02 16:50



Tpercon - Di 16.07.02 17:03

Nein, es soll mir ja keiner fertig machen, nur aus den ganzen Infos wäre ne kleine Auswahl nicht schlecht.


Pit - Di 16.07.02 19:08



Tpercon - Di 16.07.02 22:41

Hatte mir was zu jpeg runtergeladen und angeschaut. Sieht auch ziemlich kompliziert aus und es ist ziemlich unübersichlich, da es sich über mehrere Units erstreckt.
Hätte ja sein können, dass jemand sowas schonmal gemacht hat und mir somit ne kleine Hilfestellung geben kann.


Tpercon - Fr 19.07.02 21:23

Hi

bmp, ico, gif und png sind doch ziemlich einfach. Da stehen die Infos an bestimmten Positionen, z.B. beim png steht die Breite beim 16.-19. und die Höhe beim 20. - 23. Byte...


Pit - Fr 19.07.02 21:46



Tpercon - Fr 19.07.02 22:09

:(

Worin unterscheiden sich die beiden Gruppen denn im Aufbau? Welche 'Version' ist mit welcher gleich?


OregonGhost - Sa 20.07.02 13:50

Ich empfehle für Windows-Bitmaps den Artikel aus dem Platform SDK namens "Bitmap Storage". Dem ist unter anderem zu entnehmen, dass es in der Tat zwei Gruppen gibt. Nach dem BITMAPFILEHEADER folgt der eigentliche Bitmap-Header, der entweder in die Gruppe BITMAPINFOHEADER, BITMAPV4HEADER, BITMAPV5HEADER fällt oder in die Gruppe BITMAPCOREINFO. In jedem Fall folgt auf den BITMAPFILEHEADER ein DWORD, das die Größe der Struktur angibt (so dass man sie identifizieren kann), und darauf folgend kommen je ein WORD für Breite, Höhe, Planes (immer 1) und Farbtiefe. Dies gilt für alle von Microsoft angegebenen Header. Übrigens ist der BITMAPFILEHEADER 14 Byte lang.


Tpercon - Sa 20.07.02 19:49

Die Breite steht doch vom 18. - 21. und die Höhe vom 22. - 25. Byte beim bmp?!


OregonGhost - Sa 20.07.02 19:59

sizeof(BITMAPFILEHEADER) = 14;
+ 1 DWORD für Größe der Struktur = 18, also hast du wohl recht ;c)


Tpercon - Sa 20.07.02 20:06

Ja, und das ist aber bei allen bmp's auf meiner Platte so!! Aber es soll doch verschiedene Gruppen geben?


OregonGhost - Sa 20.07.02 21:48

Ja, wie ich oben beschrieben habe gibt es mindestens vier verschiedene Headerkombinationen - aber Width und Height stehen offensichtlich immer an derselben Stelle. Ich habe auch nie was anderes behauptet. Für weitere Informationen kann aber das Format variieren, ebenso wie für die Position, ab der die Bitmapdaten selbst beginnen.


Tpercon - So 21.07.02 11:44

Da ich ja nur die Breiten- und Höhenangabe brauch, reicht das für mich. Mehr brauch ich ja auch nicht vom jpeg, nur da ist das halt echt komplizierter und ich finde einfach keine Lösung, da ich da erst zu dem 0xFFC0 Marker muß und von dort dann die Breite und Höhe einfach auslesen kann.