Hintergrundfarbe eines Bildes ändern

Fragen zu Grafik- & Soundproblemen und zur Spieleprogrammierung haben hier ihren Platz.
Benutzeravatar
Donald
Beiträge: 307
Registriert: 03.01.2005 02:21
Wohnort: Marl

Hintergrundfarbe eines Bildes ändern

Beitrag von Donald »

Hi,

sagt mal kann man ... und wenn ja wie. die Hintergrundfarbe eines Bildes ändern.
Beispiel:
Ich habe ein großes Bild mit einem Blauen Hintergrund, Nun möchte ich einen
kleinen Bildausschnitt eines anderen Bildes in dieses Kopieren, welches auch
soweit wunderbar klappt.
Und jetzt mein eigentliches anliegen, der kleine Bildausschnitt hat aber leider
eine andere Hintergrundfarbe, welche nun auch in Blau geändert werden sollte.
Wie geht man dabei am besten vor ?
Oder gibt es dafür einen Befehl den ich in der Hilfedatei nicht gefunden habe ?

Gruß Donald
DONALD :D www.PureBasic-Donald.de gibt es im Moment nicht mehr
PureBasic - jaPBe - PureVisonXP - TailBite
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Re: Hintergrundfarbe eines Bildes ändern

Beitrag von Kaeru Gaman »

wenn die "Hintergrundfarbe" in einem Stück zusammenhängend vom Rand ausgeht, kannst du ein Floodfill benutzen.

andernfalls müßrest du die komplette Bildinformation durchgehen, und deine "Hintergrundfarbe" direkt ändern.
ist per Point/Plot sehr langsam, per pointer auf drawingbuffer schneller, und am schnellsten mit direktem Zugriff auf den Speicher.

... oder du gehst über Sprites, da kannst du eine Transparenzfarbe direkt angeben.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
Donald
Beiträge: 307
Registriert: 03.01.2005 02:21
Wohnort: Marl

Re: Hintergrundfarbe eines Bildes ändern

Beitrag von Donald »

Hi,

hab ein wenig experimentiert mit den Befehlen GetPixel_ und SetPixel_
Auf einem "normalen" Fenster wurde auch der angegeben Punkt geändert.
Aber das Funktioniert nicht mit den Daten die in einem ImageGadget stehen.
Wie bekommt man diese denn nun geändert.
Hab da keinen blassen schimmer, da ich bisher noch nie was mit "Grafikproggen"
zu tun hatte. Vielleicht könnte ja mal jemand ein paar Programmzeilen reinsetzen,
wie ich z.B. herausbekomme welche Farbe ein Punkt hat und wie man diesen in
eine andere Farbe ändert bei den Daten die in einem ImageGadget stehen.

Gruß Donald
DONALD :D www.PureBasic-Donald.de gibt es im Moment nicht mehr
PureBasic - jaPBe - PureVisonXP - TailBite
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Re: Hintergrundfarbe eines Bildes ändern

Beitrag von Kaeru Gaman »

ist es denn ein Image?
dann geh lieber übers Image statt übers Gadget.
http://www.purebasic.fr/english/viewtop ... 13&t=39036

wenn du aufs Gadget zugreifen willst, musst du natürlich als hWnd nicht WindowID sondern GadgetID angeben...
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
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

Re: Hintergrundfarbe eines Bildes ändern

Beitrag von ts-soft »

> GetPixel_ und SetPixel_
Unter PB4.40 solltest die API vermeiden und Plot bzw. Point nutzen.

Gruß

Thomas
Benutzeravatar
Donald
Beiträge: 307
Registriert: 03.01.2005 02:21
Wohnort: Marl

Re: Hintergrundfarbe eines Bildes ändern

Beitrag von Donald »

Hi,

@Kaeru Gaman
Das ich dann GadgetID angeben muß ist schon klar, hatte ich ja auch gemacht, aber ging nicht.

@ts-soft
Thomas, Plot und Point habe ich doch glatt übersehen.
Werde es mal damit versuchen, DANKE

Ich geb dann bescheid ob es geklappt hat, oder woran es noch hapert.

Gruß Donald
DONALD :D www.PureBasic-Donald.de gibt es im Moment nicht mehr
PureBasic - jaPBe - PureVisonXP - TailBite
Benutzeravatar
Donald
Beiträge: 307
Registriert: 03.01.2005 02:21
Wohnort: Marl

Re: Hintergrundfarbe eines Bildes ändern

Beitrag von Donald »

Hi,

alles bestens, klappt so wie es soll.
Danke für Eure Hilfe und Tips.

Gruß Donald
DONALD :D www.PureBasic-Donald.de gibt es im Moment nicht mehr
PureBasic - jaPBe - PureVisonXP - TailBite
Benutzeravatar
gnasen
Beiträge: 578
Registriert: 01.08.2007 14:28
Computerausstattung: PB 4.60

Re: Hintergrundfarbe eines Bildes ändern

Beitrag von gnasen »

Dachte ist vllt ganz interessant falls du dir das ganze, wie Kaeru geschrieben hatte, mal mit direkter Speichermanipulation anschauen willst:

http://forums.purebasic.com/german/view ... 2&p=228430

Session-ID aus dem Link genommen - Kaeru fecit
pb 4.51
Antworten