Seite 1 von 1

Bildbreite/Höhe

Verfasst: 17.10.2005 14:46
von Konne
Hi@all

Für mein neues Projekt muss ich die Bildbreite/höhe eines Bildes erfahren OHNE es davor zu laden. (Weil ich nur wenig Platz hab also keine Encoder)

Wenn das irgendwie geht wär ich dankbar wenn ihr posten könntet.

Verfasst: 17.10.2005 14:49
von Laurin
Man kann die Bildgröße aus der Datei auslesen.
Welche Art Bild ist es denn? JPG, BMP, PNG, GIF...?

Verfasst: 17.10.2005 15:56
von Konne
eigendlich .gif sollte aber auch bei anderen formaten gehen (bmp, png, jpg) aber eigendlich gif

Verfasst: 17.10.2005 16:50
von Laurin
Auf www.wotsit.org gibts zu vielen Dateiarten die Spezifikation, unter anderem auch von GIFs: http://www.wotsit.org/search.asp?page=17&s=ALLFILES
Einfach mal stöbern, dann findest du sicher, was du brauchst.

Verfasst: 17.10.2005 17:15
von DarkDragon

Code: Alles auswählen

Structure GifHeader
  ; Header
  Signature.b[3]      ;     Header Signature (always "GIF")
  Version.b[3]        ;       GIF format version("87a" or "89a")
  ; Logical Screen Descriptor
  ScreenWidth.w       ;       Width of Display Screen in Pixels
  ScreenHeight.w      ;      Height of Display Screen in Pixels
  Packed.b            ;            Screen and Color Map Information
  BackgroundColor.b   ;   Background Color Index
  AspectRatio.b       ;       Pixel Aspect Ratio
EndStructure

Structure GifImageDescriptor
  Left.w        ;          X position of image on the display
  Top.w         ;           Y position of image on the display
  Width.w       ;         Width of the image in pixels
  Height.w      ;        Height of the image in pixels
  Packed.b      ;        Image and Color Table Data Information
EndStructure

File = ReadFile(#PB_Any, OpenFileRequester("Öffnen...", "", "GIF|*.gif", 1))
If File
  ReadData(@GifHeader.GifHeader, SizeOf(GifHeader))
  While Eof(File) = 0 And ReadByte() <> $2C ;Erkennung des ImageDescripors
  Wend
  ReadData(@GifImgDesc.GifImageDescriptor, SizeOf(GifImageDescriptor))
  ;Alle Frames:
  Debug GifImgDesc\Width
  Debug GifImgDesc\Height
  ;Nur 1 Frame:
  Debug GifHeader\ScreenWidth
  Debug GifHeader\ScreenHeight
  CloseFile(File)
Else
  MessageRequester("ERROR", "")
EndIf
Für GIF.

Verfasst: 17.10.2005 18:20
von Konne
Vielen Dank :allright: