Delphi-PRAXiS
Seite 4 von 4   « Erste     234   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi "Ambilight"- Glow- Effekt um Image (https://www.delphipraxis.net/130330-ambilight-glow-effekt-um-image.html)

Pfoto 8. Mär 2009 14:44

Re: "Ambilight"- Glow- Effekt um Image
 
Liste der Anhänge anzeigen (Anzahl: 1)
@Andreas

Glückwunsch, Hartnäckigkeit zahl sich aus ;-)
Zitat:

Ich habe mein Ziel erreicht und TImage32 ist transparent. In der Tat gibt es die GaussianBlur()-Funktion in der gr_fastfx. Ich musste allerdings den Alpha-Anteil in der SplitBlur32()-Funktion "nachrüsten".
Ich hänge übrigens parallel an einem Problem (unabhängig von einem Effekt wie Ambilight),
ich versuche, die FastBlur-Funktion mit einem korrekten Alpha-Kanal auszustatten.
Dieser erzeugt nämlich einen leichten Grauschleicher (siehe Anhang).

Würdest du mir evtl. zeigen, wie du den korrekten Alpha-Kanal in der GaussianBlur-Funktion
implementieren konntest? Für mich sind diese mathematischen Dinge einfach
nicht nachzuvollziehen, so sehr ich es auch versuche zu kapieren.

Hoffe, es wird nicht zu sehr OT.

Jürgen

neo4a 8. Mär 2009 14:44

Re: "Ambilight"- Glow- Effekt um Image
 
@Larsi

Schau Dir bitte mein Code-Schnipsel etwas genauer an. Dort kopiere ich zunächst das Bitmap aus der Komponente, führe die Bildoperationen durch und weise sie wieder zu. Vielleicht bringt Dich dieser Ansatz weiter.

@Meflin

Hepp, Du hast Recht. Es würde mich aber stark wundern, wenn die Bildoperationen sich nicht auch mit Javascript clientseitig nachbilden ließen. Bei der serverseitigen Bereitstellung der Bilder kann man auf jeden Fall zuvor auch das Hoover-Bild dynamisch erzeugen lassen und mit ausliefern, ähnlich der Thumbview- Erstellung.

--
Andreas

neo4a 8. Mär 2009 14:55

Re: "Ambilight"- Glow- Effekt um Image
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Jürgen,

ich hänge Dir die modifizierte Datei mit an. Es ist zwar nur eine Zeile hinzugekommen, aber es ist vielleicht so am einfachsten. Du weißt ja, dass man die gr_fastfx einfach nur in das Verzeichnis von graphics32 kopiert und die unit in das Projekt mit einbindet.

Ich habe es nicht explizit in D7 getestet, aber die Ursprungsversion ist ja von 2006. In D2009 funktioniert sie gut und etwas schneller, als die ursprünglich von Dir gepostete Variante.

--
Andreas

Pfoto 8. Mär 2009 14:57

Re: "Ambilight"- Glow- Effekt um Image
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hab' vielen Dank dafür Andreas! Das bringt mich endlich etwas weiter!

Edit:
Schade, diese Funktion bringt komischerweise genau das gleiche Resultat (siehe Anhang)
Bei deinem Bild (bzw. Hintergrund) scheint es aber gar nicht aufzufallen.


Gruß
Jürgen

neo4a 8. Mär 2009 15:23

Re: "Ambilight"- Glow- Effekt um Image
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Jürgen,

der Grau-Anteil kommt m.E. von der Hintergrund-Farbe von TImage32. Da ich ja Timage32ex verwende, das Transparenz beherrscht, klappt's vielleicht etwas besser. Du kannst die angehängte Datei einfach in Dein Graphic32-Paket mit einbinden und erhälst eine weitere Komponente.

Bitte beachte, dass die Transparenz ggf. color:=clNone erfordert.

Viel Glück.

--
Andreas

Pfoto 8. Mär 2009 15:31

Re: "Ambilight"- Glow- Effekt um Image
 
Danke für Deine Hilfe, aber ich verwende z.Zt. nur das reine TBitmap32
und lasse es als Bitmap sofort speichern.

Den zusätzlich erstellen Kanal habe ich dann in Photoshop
als Alphamaske eingebunden.
Der Alphakanal ist ja auch bereits *fast* korrekt...
Ich denke halt, es ist eine korrektur in den mathematischen
Funktionen notwendig.

Würde mich mal interessieren, wie deine Ausgabe auf einem rein
schwarzen Hintergrund aussieht. Könntest du das mal testen
(falls es keine große Arbeit für dich macht)

Gruß
Jürgen

neo4a 8. Mär 2009 16:32

Re: "Ambilight"- Glow- Effekt um Image
 
Kann ich gerne machen, muss aber leider bis morgen warten.

--
Andreas

neo4a 10. Mär 2009 18:16

Re: "Ambilight"- Glow- Effekt um Image
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hier das für gestern versprochene Beispiel. Ich habe so erzeugt:
Delphi-Quellcode:
Image321.Bitmap.SaveToFile('.\test.bmp');
HTH.

--
Andreas


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:23 Uhr.
Seite 4 von 4   « Erste     234   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz