![]() |
Gif bei verkleinerter Bildauflösung farblich stark veränder
Ich hab folgendes Problem, wenn ich mein transparentes Gif Bild verkleinerer, wird es immer dunkler(genauer gesagt, die Pixel werden ersetzt durch schwarze Pixel), dadurch wird das Bild immer unansehnlicher.
P.S. Ich verwende TImage |
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
Weil GifImage keine Standard-Komponennte von Delphi ist, wäre es nett wenn du angeben würdest welche du verwendest.
|
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
Zitat:
Zitat:
|
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
Zitat:
Da gibt es mehrere. Namentlich TGifImage oder TJvGifImage. Womit wird eigentlich verkleinert? Das ist doch keine Eigneschaft von TImage. |
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
GifImage verwende ich, welche Lösung gibt es da noch,bei .bmp hab ich das Problem, das es bei veränderungen mit grösse zu Problemen bei der Transparens kommt
|
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
Eine Windows-Bitmap (*.bmp) unterstützt grundsätzlich keine Transparenz. Und wenn du mit Filtern beim Vergrößern/Verkleinern arbeiten willst, dann empfehle ich dir
![]() LG, ich |
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
Wie/Wo stelle ich denn bei timage32 die transparenzein?
|
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
Such vielleicht mal in der Hilfe, da ist eh eine dabei. Ich habe nur leider Delphi jetzt nicht gestartet...
Wie meinst du das aber eigentlich. Die Transparenz vom ganzen Bild (ich glaube da ist was in den Demos dabei) oder nur ein Pixel oder beim Zeichnen von Linien etc. ??? |
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
Falls das nicht klar ist: GR32 unterstützt keine Bittransparenz (ColorKey-Transparenz, z.B. bei Gifs und den 1st-Party Komponenten), sondern "echte" 8-Bit-Transparenz für jedes Pixel (+RGB = 32-Bit Farbformat, z.B. bei PNG).
Für das Umrechnen gibt es allerdings eine Funktion auf der GR32-Website:
Delphi-Quellcode:
procedure CromaKey(ABitmap: TBitmap32; TrColor: TColor32);
var P: PColor32; C: TColor32; I: Integer; begin TrColor := TrColor and $00FFFFFF; // erase alpha, (just in case it has some) with ABitmap do begin P := PixelPtr[0, 0]; for I := 0 to Width * Height - 1 do begin C := P^ and $00FFFFFF; // get RGB without alpha if C = TrColor then // is this pixel "transparent"? P^ := C; // write RGB with "transparent" alpha back into the SrcBitmap Inc(P); // proceed to the next pixel end; end; end; |
Re: Gif bei verkleinerter Bildauflösung farblich stark verä
Ist mir irgendwie noch unklar wie ich das anwende, gibt es ein Beispielprogramm vieleicht!
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz