Farbe über Bild legen, transparent
-
Hallo,
ich muss auf ein Hintergrundbild Farben drüber legen. Das Hintergrundbild soll aber noch sichtbar sein.
Wer kann mir bei dem Ansatz helfen ?
Danke
-
Kurzer Nachtrag. Das gleiche Prinzip wird bei Aurafotos angewendet. Ich habe ein Bild eines Gebäudes. Da muss ich grafisch einige Stellen markieren. In verschiedenen Farben, die sich auch überlappen könnten. Vor allem aber muss ich das Bild darunter noch sehen. Dieses habe ich in ein TImage gepackt.
-
Du kannst soweit ich weiss einzelne pixel mit TImage::Pixels[][] ansprechen und auslesen und modifizieren. Da ich aber glaube das du am liebsten zwei Layer hättest, einen fürs bild und einen für die Markierungen wird die Pixels[][] Variante wohl langsam sein da du immer beim anzeigen die Pixel zusammenrechnen musst. Aber wie dem auch sei, über diesen Ansatz solltest du auf jeden Fall in der Lage sein "Markierungen" in einem Bild unterzubringen.
-
Vielen Dank. Ich probiere es mal. Das mit dem Auslesen und Modifizieren würde gehen, denn ich markiere mit der Maus ein Rechteck, bestimme dann die Farbe, die ich darüber legen will.
Ok, also auslesen der Pixel. Wie meinst Du das zusammenrechnen ?
-
War n Saublöder Gedanke
Vergiss es. Ich dachte an eine Lösung wo du ein Bild hast das deine Markierungen beinhaltet (und sonst eine als transparent definierte farbe hat) auf das du dann zeichnest, zum Ausgeben müsstest du dann dein Hintergrundbild mit diesem zusammenrechnen was dann wohl nicht optimale geschwindigkeit bieten würde. 
Falls du die Markierungen an- und ausschalten willst zeigst du einfach einmal das Ausgangsbild und einma deine neuerzeugte Version mit den Markierungen an. Is wohl weniger stressig

-
http://vitamined.punt.nl/upload/aurafoto.jpg
http://www.bunkahle.com/Aura/Beispiele.htm
http://www.vlgp.net/aurafoto.pngWie machen die das ? An solchen Beispielen hab ich mich orientier und will es entsprechend umsetzen.
-
Und da es Systeme gibt, die keine Kamera daran angeschlossen haben sondern Platten, auf denen man die Hände legt, ist es softwaremäßig gelöst.
Da wird nur das Bild eingescannt, dann Hände auf die Platte, getestet und die Farben werden angezeigt.
-
In der VCL gibt es dafür keine Möglichkeit. Du kannst aber GDI+ verwenden:
http://msdn2.microsoft.com/en-us/library/ms533941.aspx
Da es kleine Probleme mit BCB und GDI+ gibt:
http://www.leunen.com/cbuilder/gdiplus.html