Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Bilder überlagern lassen ohne Ränder??? (https://www.delphipraxis.net/120275-bilder-ueberlagern-lassen-ohne-raender.html)

Razor90 8. Sep 2008 14:26


Bilder überlagern lassen ohne Ränder???
 
Hallo...
könnt ihr mir sagen ob es möglich ist 2 Bilder in Delphi überlagern zu lassen? Praktisch per Knopfdruck???
Wenn ich beispielsweise Button1 drücke, erscheint die Mondlandschaft und wenn ich Button 2 drücke soll eine Frau in die Mondlandschaft eingefügt werden, jeodch ohne Ränder. Sozusagen Kantenlos. Habt ihr da eine Idee oder ein Tipp? Vielen Dank im voraus

Razor

jfheins 8. Sep 2008 14:31

Re: Bilder überlagern lassen ohne Ränder???
 
Du stellst dir das aber einfach vor :mrgreen:

Wenn die Frau als PNG mit Alpha-Transparenz vorliegen hast, kannst du es (unter Berücksichtigung eben jener) auf die Mondlandschaft malen, ohne dass es farbige Ränder gibt, oder der Rand eckig erscheint.

Als Werkzeug sei dir PNGImage und die Graphics32-Bibliothek angeraten (Für ein Bild overkill, aber wenns richtig zur Sache gehen soll ... ;) )

Razor90 8. Sep 2008 14:53

Re: Bilder überlagern lassen ohne Ränder???
 
Oka...beide Bilder besitzen den Alpha-Kanal (laut GIMP). jetzt probier ich die bilder mit der image komponente überlagernd zu zeichenen aber es klappt iwi net. :(

BullsEye 8. Sep 2008 15:12

Re: Bilder überlagern lassen ohne Ränder???
 
Was hast du denn bis jetzt an code?

SirThornberry 8. Sep 2008 15:16

Re: Bilder überlagern lassen ohne Ränder???
 
Schau dir mal die Funktion Alphablend an aus der Unit windows

Razor90 8. Sep 2008 15:42

Re: Bilder überlagern lassen ohne Ränder???
 
naja...mein problem ist, dass ich totaler delphi neuling bin, bzw. noch nicht so mit der ganzen materie vertraut bin.
ich weiß beispielsweise nicht welche units ich verwenden muss um png's zu öffnen--> deshlab verwende ich die unit jpeg und öffne ein jpeg file.
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
 Image1.Picture.LoadFromFile('1.jpeg');
 image1.Stretch:=true;
end;
so und jetzt gehts schon los...wenn ich ein neuse Bild öffne also z.B.
Delphi-Quellcode:
Image1.Picture.LoadFromFile('Frau.jpg');
per ButtonClick, dann wird die ganze Zeichenfläche resettet und das wars...das erste Bild ist weg. Jetzt weiß ich aber nicht wie ich das zweite Bild 1. positionieren kann und
2. den Background (es ist alpha transparent) vom bild "frau" entfernen kann.

Vielleicht könnt ihr ja nochmal weiterhelfen..THX

SirThornberry 8. Sep 2008 15:49

Re: Bilder überlagern lassen ohne Ränder???
 
jpg und png sind verschiedene Dinge. Nach meinem Wissensstand unterstützt jpg keinen Alphakanal wo mit dein vorhaben vielleicht schon weg fällt.

jfheins 8. Sep 2008 15:51

Re: Bilder überlagern lassen ohne Ränder???
 
Oder zumindet farbige Ränder / Treppcheneffekt auftreten ;)
(Wenn man halt mit einer Farbe arbeitet, die Transparenz darstellt)

Razor90 8. Sep 2008 19:17

Re: Bilder überlagern lassen ohne Ränder???
 
ich hab die bilder ja auch als png datei vorliegen...bloß wie geh ich nun vor?

DP-Maintenance 8. Sep 2008 20:03

DP-Maintenance
 
Dieses Thema wurde von "Matze" von "Neuen Beitrag zur Code-Library hinzufügen" nach "Multimedia" verschoben.
In die Code-Library gehören nur funktionierende Source-Codes.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:06 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