Unterschied bei Bitmap.Assign zu ImageList.GetBitmap

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...

Unterschied bei Bitmap.Assign zu ImageList.GetBitmap

Beitragvon volker » 14. Nov 2018, 14:36 Unterschied bei Bitmap.Assign zu ImageList.GetBitmap

Hallo an alle,
habe ein merkwürdiges Ergebnis in der Qualität der Grafik bei unterschiedlichen Prozeduren (die meines Erachtens das gleiche Ergebnis liefern müssten).
Habe eine ImageList die Wetter-Icons speichert, in diese wurden über die IDE png-Grafiken mit Transparenz reingeladen.

1) Direkte Zuweisung über GetBitmap:
Code: Alles auswählen
ImageList1.GetBitmap (i, Image1.Picture.Bitmap);
liefert eine perfekte Darstellung (ganz links im Screenshot, durchscheinende Eiszapfen.

2) Zwischenspeicherung der gleichen Grafik aus der ImageList in Bitmap1 und ein anschließendes Assign auf Image2 liefert eine pixelige Grafik, anscheinend ging die Transparenz-Information verloren (mittlere Grafik, weiße Eiszapfen ohne weich verlaufende Ränder)
Code: Alles auswählen
ImageList1.GetBitmap (i, Bitmap1);
Image2.Picture.Bitmap.Assign (Bitmap1);

3) Ein CopyRect auf die Canvas eines 3. Images (Image3, nach entsprechender "Vorbereitung" des Hintergrundes der Canvas) aus der gleichen Zwischenspeicherung in Bitmap1 liefert wieder eine perfekte Grafik (rechte Grafik, wieder schön weich verlaufende semitransparente Eiszapfen).
Code: Alles auswählen
Image3.Canvas.Brush.Color := clNavy;
Image3.Canvas.FillRect (0,0, 74,44);
Image3.Canvas.CopyRect (Rect (0,0, 74, 44), Bitmap1.Canvas, Rect (0,0, 74,44));
Also ging die Transparenz-Info doch nicht in die Hose.

Dachte immer, GetBitmap und Assign liefern exakt das gleiche Ergebnis. Ist alles nicht tragisch, wundert mich nur. Vielleicht wissen die Spezialisten unter Euch warum das so ist. Oder gibt es noch eine (mir unbekannte) Einstellung, draw-modus oder so etwas in der Art ?
Vielen Dank und viele Grüße
(Bevor einer fragt, was das soll: Ich brauche einmal direkt die Grafik aus der ImageList in Image1 dargestellt, aber auch die zwischengespeicherte Version in Bitmap1 für weitere Grafikmanipulationen)
Eiszapfen.png
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
volker
 
Beiträge: 21
Registriert: 14. Nov 2012, 14:36
OS, Lazarus, FPC: Rosa Linux Desktop R8 (L 1.6, FPC 2.6.4) | 
CPU-Target: 32Bit
Nach oben

• Themenende •

Zurück zu Multimedia



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried