Transparenz von JPG ändern
Übersicht

![]() |
CerbusBetreff: Transparenz von JPG ändern |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hi!
Hab schon bei "suche" alles durchsucht, aber nicht das gefunden was ich brauche. Meine Frage. Gibt es eine Möglichkeit Bilder (beispielsweise JPG) die Tranzparents zu verändern? Ich meine ein Bild das zuerst nicht sichtbar ist, langsam sichtbar zu machen. Sprich das Bild einfaden lassen. Irgendwie hänge ich an diesem kleinen Prob. Hoffe ihr könnt mir helfen. ![]() |
||
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
joa indirekt mit ner AlphaEngine...
Hier gabs mal eine da bin ich mir sicher, musste mal suchen... |
||
![]() |
Cerbus |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ok. Danke für die schnelle Antwort muss ich mal schauen. =)
Wenn wer noch andere Möglichkeiten weiß, kann er sie auch noch gerne Posten. ![]() |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
bruZ hat sowas mal gebastelt:Code: [AUSKLAPPEN] ; Werte: Blender Grafik,xpos,ypos,ein/ausblenden,zeit in Millisecs
b1=LoadImage("gfx/1.bmp") b2=LoadImage("gfx/2.bmp") b3=LoadImage("gfx/3.bmp") Blender b1,170,190,0,3000 Blender b1,170,190,1,2000 Blender b2,170,190,0,3000 Blender b2,170,190,1,2000 Blender b3,170,190,0,3000 Delay 1200 Blender b3,170,190,1,2500 FreeImage b1:FreeImage b2:FreeImage b3 ; Die eigentliche Function Function Blender(Image, X, Y, Mode,Time) Source=ImageBuffer(Image) Dest =FrontBuffer() MaxX =ImageWidth(Image)-1 MaxY =ImageHeight(Image)-1 Start =MilliSecs() Color 0,0,0 If Mode=0 Then Rect X,Y,MaxX+1,MaxY+1 If Mode=1 Then DrawBlock Image,X,Y LockBuffer Source LockBuffer Dest While MilliSecs()-Start<Time Count=(Count+1) Mod 4 If Count=0 Then MinX=0: MinY=0 If Count=1 Then MinX=1: MinY=1 If Count=2 Then MinX=1: MinY=0 If Count=3 Then MinX=0: MinY=1 If Mode=0 Then Value=MilliSecs()-Start If Mode=1 Then Value=Time-MilliSecs()+Start For ii=MinY To MaxY Step 2 For i=MinX To MaxX Step 2 rgb=ReadPixelFast(i,ii,Source) rgb=(rgb And 16711680)/65536*Value/Time*65536+(rgb And 65280)/256*Value/Time*256+(rgb And 255)*Value/Time WritePixelFast X+i,Y+ii,rgb,Dest Next Next Wend UnlockBuffer Source UnlockBuffer Dest If Mode=0 Then DrawBlock Image,X,Y If Mode=1 Then Rect X,Y,MaxX+1,MaxY+1 End Function |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
Omenaton_2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Wenn es um Transparenz oder gar um Maskierung geht, nimm kein JPG, da dabei die Farbwerte nicht exakt die bleiben wie beim anspeichern angezeigt wird. Nimm dafür BMP oder TGA. | ||
![]() |
Cerbus |
![]() Antworten mit Zitat ![]() |
---|---|---|
Vielen dank!
Werd mal den Code genauer unter die Lupe nehmen. ![]() |
||
denial |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Timo hat Folgendes geschrieben: joa indirekt mit ner AlphaEngine...
Hier gabs mal eine da bin ich mir sicher, musste mal suchen... Faszinierend, was so alles als Engine bezeichnet wird. ![]() Ich hab jetzt im Übrigen eine ziemlich gute Mauszeiger-Engine programmiert: Code: [AUSKLAPPEN] DrawImage engine_mouse,MouseX(),MouseY() ![]() |
||
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
warum kompliziert, wenns auch einfach geht ???
Hier meine Fade-Engine ![]() Code: [AUSKLAPPEN] For t=0 To 255 l=t/100.0*light# SetGamma t,t,t,l,l,l Next UpdateGamma einfach in die Schleife. light# von 0 bis 100, wobei 0 schwarz und 100 nicht transparent ist. Damit fadest du denn ganzen Bildschirm, nicht nur ein Bild. Kann man also auch nach nem Game Over oder so verwenden. MfG D2006 |
||
![]() |
Firstdeathmaker |
![]() Antworten mit Zitat ![]() |
---|---|---|
^ Man hat aber ein Problem wenn man nur ein einziges Bild, oder z.B. nur den Spielbereich so bearbeiten möchte. Ein Kollege von mir hat das für den Tag/Nachtwechsel missbraucht, aber die ganzen Spielkontrollen färben sich ja leider mit ein. | ||
www.illusion-games.de
Space War 3 | Space Race | Galaxy on Fire | Razoon Gewinner des BCC #57 User posted image |
![]() |
TheShadowModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Zitat: bruZ hat sowas mal gebastelt:...
nö das war wohl ich... und das ist nur dazu da, ein bild von schwarz einzublenden (und dann ausblenden) - also nix mit alpha... Ist nicht sooo schnell... Für Bilder mit max 16 Farben gibt es einen Turbofader, den ich mal gecodet hab... Geht aber nur mit bmp's |
||
AMD64 3500+ | GeForce6600GT 128MB | 1GB DDR | WinXPsp2 |
![]() |
TheProgrammer |
![]() Antworten mit Zitat ![]() |
---|---|---|
schaut mal bei http://www.blitzbase.de/2c.htm
unter "Fader *" |
||
aktuelles Projekt: The last day of human being |
Timo |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
das was ich meinte hieß AlphaEngine, Name nicht von mir , hab ihn benutzt !! Ich kann ja auch MachTranzparentRoutine sagen, aber das andere hört sich besser an | ||
![]() |
D2006Administrator |
![]() Antworten mit Zitat ![]() |
---|---|---|
@TheProgrammer:
Das Sternchen bedeutet, dass der Autor der Seite es geschrieben hat. Wie's der Teufel will ist das "zufällig" TheShadow. Nur so als Hinweis. MfG |
||
![]() |
Hubsi |
![]() Antworten mit Zitat ![]() |
---|---|---|
TheShadow hat Folgendes geschrieben: nö das war wohl ich... Ups ![]() ![]() |
||
Den ganzen Doag im Bett umanandflagga und iaz daherkema und meine Hendl`n fressn... |
![]() |
Cerbus |
![]() Antworten mit Zitat ![]() |
---|---|---|
ach du ..... muss man dafür viel schreiben. ^^
Das von TheShadow sieht stark aus, hat aber auch sehr viele Zeilen... Muss mir das erst mal ganz genau anschauen bis ich da hinter steig, wo der Trick dabei ist. ![]() Aber bin auf jedenfall ein ganzes Stück weiter. =) Vielen dank für eure super Hilfe! ![]() |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group