AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Schatten

Ein Thema von Prototypjack · begonnen am 29. Sep 2007 · letzter Beitrag vom 29. Sep 2007
Antwort Antwort
Prototypjack

Registriert seit: 2. Feb 2003
611 Beiträge
 
Delphi 2009 Professional
 
#1

Schatten

  Alt 29. Sep 2007, 16:03
Moin,

Ich bin hier gerade etwas am verzweifeln.

Ich habe ein Rect auf einem Canvas und möchte darunter einen Schatten legen (ich kann auch den Schatten zuerst legen und dann das Rect darüber zeichnen, das ist kein Problem), aber dabei darf ich keinen Blur Effekt verwenden, da die Bitmap auf der ich Zeichne (bzw die Canvas) schon ein Muster im Hintergrund hat, also: Verwischen ist nicht.

Es muss doch irgendwie möglich sein diesen Schatten hinzubekommen.

Bei dem Beispiel im Anhang sieht man ganz schön was ich machen will, die grünen Linien symbolisieren dabei den komplexen Hintergrund, welche nicht verwischt werden darf.

Ich hoffe jemand kann mir helfen

Danke & Grüße,
Max
Miniaturansicht angehängter Grafiken
dp_947.jpg  
Max
„If you have any great suggestions, feel free to mail me, and I'll probably feel free to ignore you.“ . Linus Torvalds
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#2

Re: Schatten

  Alt 29. Sep 2007, 16:11
Nunja, wie machen es denn Grafikprogramme? Genau, sie fügen den Schatten in einen neuen Layer ein, damit der Blur auch wirklich nur den Schatten betrifft. Zeichne also den Schatten in ein neues Bitmap, blurre es und zeichne das Resultat dann auf das Original-Bitmap.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Prototypjack

Registriert seit: 2. Feb 2003
611 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Schatten

  Alt 29. Sep 2007, 16:44
Moin,

Danke erst einmal für deine Antwort.

Das war tatsächlich einer der ersten Methoden die ich erwog, aber mir kam da mindestens ein Problem in den Kopf:

Wie kopiere ich die Alphatransparenten Ränder (Der Schatten ist ja an einigen Stellen halbdurchlässig)?

Grüße,
Max
Max
„If you have any great suggestions, feel free to mail me, and I'll probably feel free to ignore you.“ . Linus Torvalds
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#4

Re: Schatten

  Alt 29. Sep 2007, 16:54
Sicherlich nicht mit den eingebauten Delphi-Funktionen, denn die sind immer noch bei GDI festgefroren .
AlphaBlend / www.graphics32.org
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Prototypjack

Registriert seit: 2. Feb 2003
611 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Schatten

  Alt 29. Sep 2007, 17:08
Moin,

Ich denke ich verstehe dich irgendwie falsch. Wenn ich ein zweites Bitmap instantiiere, dann ist dessen BG ja weiß, selbst wenn ich darauf rumverwische bleibt ein Teil, der alphatransparente Teil immer weiß anstatt Alphatransparent. Da hilft doch auch keine Copy-Prozedur die Alpha-Werte unterstützt, oder?

Irgendwie stehe ich doch auf dem Schlauch ...

(Achja: Die G32 möchte ich nur ungern verwenden, denn es handelt sich hierbei um eine Komponente und die ich möglichst autark halten will).

Grüße & Danke,
Max
Max
„If you have any great suggestions, feel free to mail me, and I'll probably feel free to ignore you.“ . Linus Torvalds
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#6

Re: Schatten

  Alt 29. Sep 2007, 18:05
Zitat von Prototypjack:
Ich denke ich verstehe dich irgendwie falsch. Wenn ich ein zweites Bitmap instantiiere, dann ist dessen BG ja weiß[...]
Stimmt soweit, aber wer sagt, das wäre nicht änderbar ? Wenn ich dich nicht ganz falsch verstehe, sollte es doch genügen, den Hintergrund mit 0 (transparentes Schwarz) zu füllen.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#7

Re: Schatten

  Alt 29. Sep 2007, 18:24
Hi, gucke mal da nach: http://www.delphipraxis.net/internal...=774677#774677

reines GDI du musst nur noch ein wenig anpassen.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Prototypjack

Registriert seit: 2. Feb 2003
611 Beiträge
 
Delphi 2009 Professional
 
#8

Re: Schatten

  Alt 29. Sep 2007, 18:49
Moin,

Khabarakh, nein, das Füllen des Hintergrunds mit 0 macht diesen bei mir schlichtweg Schwarz.

Grüße,
Max
Max
„If you have any great suggestions, feel free to mail me, and I'll probably feel free to ignore you.“ . Linus Torvalds
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#9

Re: Schatten

  Alt 29. Sep 2007, 19:48
Zitat von Prototypjack:
Khabarakh, nein, das Füllen des Hintergrunds mit 0 macht diesen bei mir schlichtweg Schwarz.
Ähm ja, beim Anzeigen natürlich. Aber nach einem korrekten AlphaBlend (s. tP) z.B. auf ein rotes Bitmap sollte das Resultat immer noch gleich rot sein.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:30 Uhr.
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