![]() |
FTGifAnimate transparenz - gerendertes überlagert sich
Liste der Anhänge anzeigen (Anzahl: 2)
Ich habe mir die Gif-Komponenten von
![]() Das klappt auch prima, solange die Transparenz ausgeschalten ist. Sobald ich die aber aktiviere, überlagert sich der Text, den ich per canvas.textout auf die einzelnen Frames male, auf mir unerklärliche Weise. Ein bisschen Code:
Delphi-Quellcode:
Im Anhang einmal ohne, einmal mit Transparenz.
GifanimateBegin // anfang des rendervorgangs
gr.Assign(ISource.Bitmap); //gr:TBitMap GifAnimateAddImage(gr,SBtranscolor.Font.Color,delay); //einmal ohne Text for i:= 0 to frames -1 do begin gr.Assign(ISource.Bitmap); //der hintergrund wird zugewiesen gr.canvas.brush.style:=bsclear //Fontausgabe transparent - wie ging das nochmal elegant? gr.Canvas.Font:=EScrollText.Font; //Font einstellen gr.Canvas.TextOut(gr.Width-progress,Offset,Text); //Ins Bild schreiben GifAnimateAddImage(gr,SBtranscolor.Font.Color,delay); //Bild wird zum Frame progress:= progress + pPF; end; Was ich mir überhaupt nicht erklären kann: gr wird jedes mal komplett neu mit dem Hintergrund belegt, und nur einmal mit Text beschrieben - wie kann es da überhaupt zu diesen Überlagerungen kommen? Selbst wenn es Interlaced ist... [edit=MrSpock]Code auf Wunsch des Erstellers geändert. Mfg, MrSpock[/edit] |
Re: FTGifAnimate transparenz - gerendertes überlagert sich
Liste der Anhänge anzeigen (Anzahl: 1)
*push*
Dass es mit brush.style:=bsclear eleganter geht, weiss ich jetzt. Aber auhc nach einigem rumprobieren konnte ich mein problem nicht lösen... wie bereits gesagt: ohne transparenz geht es, mit transparenz bleibt die alte schrift da wo es vorher transpa... halt mal... könnte es sein, dass die alte bild noch unter der transparenz angezeigt werden? wenn ja, wie kann ich das ändern? EDIT: ein rewrite(=laden & speichern) mit dem alten CorelPhotopaint 7 hat das ganze ins reine gebracht! :-D Was macht Corel, was ich nicht mache?! ich habs euch nochmal angehängt. |
Re: FTGifAnimate transparenz - gerendertes überlagert sich
*push*
Noch ein Projekt das ich offenbar auf Eis legen muss :cry: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:35 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