Image breite und Höhe

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Image breite und Höhe

Beitrag von Tsuki-Namida »

Hallo,
Ich möchte herausfinden welche breite und höhe ein bild hat (*.jpg) Ich habe in der PB Hilfe nur "ImageWidth()" gefunden aber ich brauche beide... gibt es da was?
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

ImageHeight() :?
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Beitrag von Tsuki-Namida »

@DarkDragon das stand nicht in der hilfe.... naja gut werde es versuchen ;) danke
DarkDragon
Beiträge: 6291
Registriert: 29.08.2004 08:37
Computerausstattung: Hoffentlich bald keine mehr
Kontaktdaten:

Beitrag von DarkDragon »

Magix-Soft <Kain> hat geschrieben:@DarkDragon das stand nicht in der hilfe.... naja gut werde es versuchen ;) danke
Doch:
Befehlsübersicht

CatchImage
CopyImage
CreateImage
FreeImage
GrabImage
ImageDepth
ImageHeight
ImageID
ImageOutput
ImageWidth
IsImage
LoadImage
ResizeImage
SaveImage
UseImage
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Beitrag von Tsuki-Namida »

Der befehl ist super danke...

aber...

Code: Alles auswählen

        While NextDirectoryEntry()=1
          img_datei$ = DirectoryEntryName()
          Hohe.l = ImageHeight()
          Breite.l = ImageWidth()
          Debug Hohe.l
          Debug Breite.l
          img_datei$ = RemoveString(img_datei$, ".jpg")
          img_datei$ = RemoveString(img_datei$, ".JPG")
          AddGadgetItem(#File,-1,img_datei$)
        Wend
Warum bekomme ich bei "Debug Hohe.l" immer 14 und bei "Debug Breite.l" immer 16 zurück? dabei haben die bilder alle unterschiedliche größen....
Benutzeravatar
FGK
Beiträge: 249
Registriert: 09.01.2005 14:02
Computerausstattung: i5-4430 CPU / 8GB RAM
GeForce GT630
Windows 10 Home / 64-bit
Wohnort: Augsburg

Beitrag von FGK »

@Kain

in deinem Codeschnipsel lädst du das Bild aber nicht - deshalb gibt ImageHeight und ImageWidth immer die Werte zurück die das letzte
benutzte Image besessen hat. Die Befehle beziehen sich ja immer auf das "aktive" Image. Deshalb gibt es ja auch den Befehl UseImage um
aus mehreren Images das aktiv zu setzen auf das die folgende Imagebefehle sich beziehen sollen.

Gruß

FGK
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Um Hoehe oder Breite eines Bildes zu ermitteln, mußte es natürlich laden, nur den Namen feststellen reicht nicht :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Beitrag von Macros »

Code: Alles auswählen

While NextDirectoryEntry()=1
          img_datei$ = DirectoryEntryName()
          LoadImage(1,img_datei$)
          UseImage(1)
          Hohe.l = ImageHeight()
          Breite.l = ImageWidth()
          Debug Hohe.l
          Debug Breite.l
          img_datei$ = RemoveString(img_datei$, ".jpg")
          img_datei$ = RemoveString(img_datei$, ".JPG")
          If hohe<=55 And breite<=55
          AddGadgetItem(#File,-1,img_datei$)
          Endif
        Wend
falls du die ImageID 1 schon verwendet hast, natürlich ersetzen.
Zuletzt geändert von Macros am 14.01.2006 13:13, insgesamt 2-mal geändert.
Benutzeravatar
Tsuki-Namida
Beiträge: 633
Registriert: 17.11.2005 13:27
Kontaktdaten:

Beitrag von Tsuki-Namida »

wie kann ich das dann ambesten machen? es sollen ja nur bilder mit einer maximal größe von 55 x 55 pixeln in die lise geladen weden.

[Edit]
okay ich bin zulangsam für diese Welt xD
[/Edit]
Benutzeravatar
Macros
Beiträge: 1361
Registriert: 23.12.2005 15:00
Wohnort: Olching(bei FFB)
Kontaktdaten:

Beitrag von Macros »

Habe meinen Code angepasst.
Antworten