Seite 4 von 5
Verfasst: 15.03.2006 00:39
von Falko
mardanny71 hat geschrieben:@Falco
Ohne Parameter krieg ich auch nichts zum laufen.
Ich möchte auch mal Wissen, was Parameter 1 oder #PB_Image_DisplayFormat dann bedeuten.
Die Bittiiefe werden doch wohl Pflichtparameter werden.
Gruß
mardanny71
Ja, das sollte es eigendlich sein. Lt. Structureviewer unter Konstanten
soll #PB_Image_DisplayFormat = 8 sein. Also 8Bit-Tiefe =256Farben.
Setze ich die Konstante. Dann habe ich nur ein 2-Bit-Bild Grün/Schwarz.
Ersetzte ich diese aber nur durch die 8, dann ist das nicht das Gleiche.
Es sind zwar mehr Farben drinne, aber es sieht so aus, wie früher
beim C64 (256 Farben)
Aber Spass beiseite. Ein Debug verrät den wahren Wert, der lt. Structureviewer nicht stimmen kann. Ich bekomme beim
Debug #PB_Image_DisplayFormat eine "1" heraus und das ist ein Bug.
[Edit] Danke @Andre

[/Edit]
MfG Falko
Verfasst: 15.03.2006 01:01
von PBZecke
Hallo!
Möchte meinen Senf auch noch dazu geben! In der Hilfe sind die Befehle
"GetExtensionPart", "GetFilePart" und "GetPathPart" unter Misc zu finden.
Ich fände es besser, wenn man die Erklärung nach FileSystem verschieben
würde. Passt da eher hin.
Ich habe mir mal selber extra dafür Funktionen gebastelt, bis ich die dann
durch Zufall unter Misc gefunden hatte. Solche Befehle hatte ich nämlich
eher unter FileSystem erwartet.
Verfasst: 15.03.2006 01:08
von Andre
@PBZecke: die Befehle sind auch in der Doku immer in der Lib gelistet, wo sie sich tatsächlich befinden. Kann aber gerne in der Doku zur FileSystem Lib entsprechende Hinweise/Links integrieren.
Verfasst: 15.03.2006 01:11
von ts-soft
Besser wäre es doch, wenn Fred die entsprechenden Funktionen auch in die
FileSystem Lib verschiebt. Bessere Gelegenheit, als jetzt wird er wohl so
schnell nicht finden

Verfasst: 15.03.2006 01:13
von PBZecke
Andre hat geschrieben:@PBZecke: die Befehle sind auch in der Doku immer in der Lib gelistet, wo sie sich tatsächlich befinden. Kann aber gerne in der Doku zur FileSystem Lib entsprechende Hinweise/Links integrieren.
Hatte ich mir schon gedacht, dass das nach Libs sortiert ist,
aber ein Hinweis wäre wirklich gut, gerade für Pure-Einsteiger.
Verfasst: 15.03.2006 01:14
von PBZecke
ts-soft hat geschrieben:Besser wäre es doch, wenn Fred die entsprechenden Funktionen auch in die
FileSystem Lib verschiebt. Bessere Gelegenheit, als jetzt wird er wohl so
schnell nicht finden

Das wäre wohl wirklich die korrekte Lösung!

Verfasst: 15.03.2006 15:18
von heinz.goldbach
Als Beispiel zu CatchImage wird in der Hilfe folgendes aufgeführt:
Result = CatchImage(#Image, MemoryAddress [, Flags])
und als Beispiel das hier:
Code: Alles auswählen
CatchImage(0, ?Logo)
End
Logo: IncludeBinary "Logo.bmp"
Lief so unter 3.94, jedoch nicht mehr unter 4.0
Fred schrieb:
You will have to use the 'Length' parameter of CatchImage() when the image isn't 'safe' as some decoding error can error and the decoder will do a buffer overflow.
Diese zwei Beispiele gehen:
Code: Alles auswählen
UseJPEGImageDecoder()
CatchImage(0, ?kStart, ?kEnd - ?kStart)
OpenWindow(0,0,0,320,240,"")
StartDrawing(WindowOutput(0))
DrawImage(ImageID(0),20,20)
StopDrawing()
Repeat:Until WaitWindowEvent()=#PB_Event_CloseWindow
DataSection
kStart:
IncludeBinary "a4.jpg"
kEnd:
EndDataSection
oder
Code: Alles auswählen
UseJPEGImageDecoder()
CatchImage(0, ?k, 22875) ; 22875 ist die Dateigrösse von ?k
OpenWindow(0,0,0,320,240,"")
StartDrawing(WindowOutput(0))
DrawImage(ImageID(0),20,20)
StopDrawing()
Repeat:Until WaitWindowEvent()=#PB_Event_CloseWindow
DataSection
k: IncludeBinary "a4.jpg"
EndDataSection
Flype erklärte mir das.
Verfasst: 15.03.2006 15:26
von ts-soft
@heinz.goldbach
Was Flype Dir erklärt hat, trifft aber nicht auf das Beispiel zu, da die Länge
bei BMP nicht erforderlich ist. Die Längenangabe ist nur bei komprimierten
Imageformaten, wie z.B. jpg, erforderlich.
Aber ein Hinweis hierauf wäre schon sinnvoll, auch bei CatchSound mit OGG.
Verfasst: 15.03.2006 18:04
von heinz.goldbach
Hallo ts-soft,
ich habe wieder etwas dazu gelernt.
Was mich nur wundert ist, das unter 3.94 die Länge bei JPG Dateien nicht angegeben werden musste und es bei 4.0 erfoderlich ist. Hat jemand eine Erklärung - nur interessenhalber.
Verfasst: 17.03.2006 17:43
von PBZecke
Hallo!
Ist eigentlich geplant EventLParam() und EventWParam() in die
Dokumentation aufzunehmen? Die Befehle gibts seit 2.4, wurden jedoch
nie beschrieben. Sind nur in der History aufgelistet. Ich kann mir zwar
denken wofür die sind, aber sollten trotzdem in der Hilfe auftauchen.