gesucht gegenteil von catchimage

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
mar
Beiträge: 107
Registriert: 06.08.2005 14:49

gesucht gegenteil von catchimage

Beitrag von mar »

Hi, wie kommt man an das PBImage im Speicher ran?

Catchimage Bitmap->PBBild
???Image PBBild->Bitmap

mar
Benutzeravatar
Ja!
Beiträge: 271
Registriert: 02.01.2006 16:13
Wohnort: Stuttgart

Beitrag von Ja! »

Hi,

wie meinst Du das genau?

CatchImage lädt ein Bild aus der übergebenen Speicheradresse.

Und Du willst ein Befehl wie WriteImage o.s.ä. womit
man ein Bild an die angegebene Speicheradresse schreibt..?
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 »

Code: Alles auswählen

CatchImage(0, ?Logo)

ImageID(0) = Handle
?Logo = Speicheradresse
Wenn Du also CatchImage machen kannst, haste die Adresse doch :freak:
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
mar
Beiträge: 107
Registriert: 06.08.2005 14:49

Beitrag von mar »

wenn das mit der id geht, dann war das ja einfacher als gedacht.
Danke ... werde ich heute Abend testen.

mar :oops:
Kekskiller
Beiträge: 752
Registriert: 14.09.2004 21:39
Kontaktdaten:

Beitrag von Kekskiller »

Wenn du damit die Funktion des Extrahierens aus der Exe umkehren, müssen wir dich wohl enttäuschen. CatchImage wurde dafür soweit ich weiß gemacht, dass man in Exe eingebundene Images extrahieren kann. Beim Compilieren wird das Image also vorgefertigt in die Exe gepackt -> schneller Zugriff, wenn ich mich nicht irre. Andersherum gehts nicht, es sei denn du hast Bock, 5 Instanzen zu starten, die sich gegenseitig und unter größtem Aufwand hardkodieren ;) ...
mar
Beiträge: 107
Registriert: 06.08.2005 14:49

Beitrag von mar »

Na für eigene Bildformate oder SQL ...
ist es nicht schlecht die Bilder von PB speichern
zu können ohne sie vorher als BMP (wegen dem
einfach auszulesenden Format)
auf Platte zu speichern und danach wieder einladen
zu müssen.

Eigentlich suche ich nur ein saveImage für BMP-Bilder
, dass die Bilder im Speicher ablegt. Am besten wär
32Bit RBG Format. Die Funktion ist ja in PB eh schon drin.
Viel Aufwand wär das nicht.

mar
Kekskiller
Beiträge: 752
Registriert: 14.09.2004 21:39
Kontaktdaten:

Beitrag von Kekskiller »

Wie ts-soft schon sagte, wenn das Bild in Purebasic geladen wird, befindet es sich im Speicher... Du müsstest nur jedes mal die EXE offen halten, da PB nach jedem Beenden automatisch alles geladene und reservierte (z.b. Memory) sofort wieder löscht.
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 »

Bevor Keksi für noch mehr Verwirrung sorgt :wink:

Code: Alles auswählen

DataSection
  Image:
  IncludeBinary "Bild.bmp"
  ImageEnd:
EndDataSection

;Catch Version 1
ID = CatchImage(#PB_Any, ?Image)
Handle = ImageID(ID)

;Catch Version 2
Handle = CatchImage(0, ?Image)
ID = 0

;Save Version 1
SaveImage(ID, "Bild.bmp")

;Save Version 2 (blödsinnig, aber geht
File = CreateFile(#PB_Any, "Bild.bmp")
  WriteData(File, ?Image, ?ImageEnd - ?Image)
  CloseFile(File)
EndIf
Es sind fast alle Varianten bei, und ich hoffe man versteht es jetzt,
ansonsten Hife lesen
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
mar
Beiträge: 107
Registriert: 06.08.2005 14:49

Beitrag von mar »

Also ist es nicht möglich ein PB-Bild mit PB-Befehlen in den Speicher zu kopieren.

Dann manipulier ich die Bilder eben nicht mit PB Befehlen.

Es gibt noch so ein paar betriebssytemabhängige Varianten.
Mal sehen, wie das da mit der Auflösung ist.

Danke
mar
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 »

mar hat geschrieben:Also ist es nicht möglich ein PB-Bild mit PB-Befehlen in den Speicher zu kopieren.
Jetzt verstehe ich garnichts mehr, es steht doch im Speicher, ab Speicheradress ?Image
mar hat geschrieben: Dann manipulier ich die Bilder eben nicht mit PB Befehlen.
Klar, sieht nicht so aus als wenn Du dazu in der Lage wärst :lol:
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
Antworten